Корреляция Series.corr (series2) дает NAN, почему? - PullRequest
1 голос
/ 05 мая 2020

Предположим, у меня есть два кадра, и я использую ilo c для извлечения некоторых значений. После двух извлечений я хочу сопоставить их, но series.corr (series) все время возвращает NAN. Любая помощь будет признательна?

df1 = pd.DataFrame([[1.0, 2.0], [3, 4], [5, 1], [7, 8],[1, 2],[1, 2],[1, 2],[1, 2],[1, 2],[1, 2],[1, 2]], columns=["A", "B"])
df2 = pd.DataFrame([[1.0, 2], [3, 4.0], [5, 6.0], [7, 8],[1, 2],[1, 2],[1, 2],[1, 2],[1, 2],[1, 2],[1, 2]], columns=["A", "B"])

df1_selection=df1.iloc[1:3, 1]
df1_numeric=pd.to_numeric(df1_selection, downcast='float')

df1_anotherselection=df1.iloc[5:7 , 1]

df1_2numeric=pd.to_numeric(df1_anotherselection, downcast='float')

df1_2numeric.reset_index(drop=True)
df1_numeric.reset_index(drop=True) 

#When I do this I get nan 
df1_numeric.corr(df1_2numeric)

Ответы [ 2 ]

0 голосов
/ 06 мая 2020

Мне удалось найти решение.

df1_new=df1.iloc[1:3, 1]

ilo c вернул мне серию, но с именем в данном случае "B".

Поэтому мне пришлось либо использовать series.columname.corr(series2.columname)

, либо я мог просто опустить имя столбца. Если вы не знаете имя столбца, используйте: df.columns = [''] * len(df1_reseted.columns)

0 голосов
/ 05 мая 2020

Это дает вам матрицу (2x2), вы можете попробовать эту.

df1_2numeric = df1_2numeric.reset_index(drop=True)
df1_numeric = df1_numeric.reset_index(drop=True)

new = pd.concat([df1_2numeric,df1_numeric], axis=1)
new.corr()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...