Как написать функцию попарного сравнения столбцов?
Необходимо написать функцию попарного сравнения столбцов. (Столбцов 1000+)
Т.е значения одной строки сравниваются в двух столбцах и если доля одинаковых значений превышает X, то необходимо удалить один из сравниваемых столбцов.
Все столбцы числовые, с NaN'ами
Необходимо строгое сравнение. Не корреляция
Pandas.Duplicate ищет точное совпадение, поэтому нужен другой костыль♂️
longclaps, допустим есть массив с опросом
Каждая строка это человек для него есть множество признаков(ответ на вопрос).
Для каждого человека нужно попарно сравнить два столбца. Пример
columns:( "есть собака" ,"есть недосып")
( 1, 0)
(1,1)
(1,1)
Нужно посчитать количество строк у которых значения в этих столбцах одинаковы. И рассчитать для каждой пары процент совпадений. Если он будет выше определенного значения, то дропаем один из столбцов.
Все столбцы числовые, с NaN'ами
заменить nan на "nan"
arseny_sitdikov, ясно. Хорошее решение - разрушить однотипность данных ) Заменяй уж лучше на какой-нибудь math.inf, если у тебя флоаты, или какое-нибудь спецальное бессмысленное целое, если целочисленные.
Создай доп столбец, заполни его вычислением столбец1==столбец2, подсчитай долю True в нём - вроде нет проблем