Найти корреляцию строк в кадре данных с python pandas - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть кадр данных panda с этой структурой, и я хотел бы получить в качестве выходных данных таблицу, содержащую только значение, где корреляция Пирсона выше 0,8.

Таблица ввода:

Date         Word   Position
01/01/2020   dog    2.2
01/01/2020   cat    3.4
01/01/2020   pig    4
01/01/2020   cow    3
01/02/2020   dog    3.2
01/02/2020   cat    4.4
01/02/2020   pig    4
01/02/2020   cow    3
01/03/2020   dog    3
01/03/2020   cat    4
01/03/2020   pig    4.5
..........

Желаемый вывод:

Word1    Word2  Correlation
cat      dog    0.8
pig      cat    0.9

1 Ответ

0 голосов
/ 23 апреля 2020

Вы хотели бы повернуть фрейм данных, чтобы разделить 'pig', 'dog' и 'cat' на отдельные столбцы.

В качестве альтернативы pivot вы можете использовать groupby или использовать фильтры для извлечения пар (дата, положение) для каждого животного в df.Word.unique().

Это для разделения данных по животным. Второй шаг - использовать numpy.correrrelate(df[col1].values, df[col2].values) для каждой комбинации (col1, col2) у животных.

...