2016-08-17 4 views
0

나는 DataFrame의 열로 주어진 여러 변수의 Pearson 상관 행렬을 계산하는 것을 아주 간단하게하려고합니다. 나는 그것을 무시하고 p 값을 제공하기를 원합니다. scipy.stats.pearsonr은 두 변수에서만 작동하고 nans를 고려할 수 없기 때문에 충분하지 않습니다. 예를 들어Scipy와 피어슨 다중 상관

,

df = pd.DataFrame([[1,2,3],[6,5,4],[1,None,9]]) 

     0 1 2 
    0 1 2.0 3 
    1 6 5.0 4 
    2 1 NaN 9 

안양의 열은 변수와 행이 관찰은 ...보다 더 나은 뭔가가 있어야합니다. 나는 대응하는 p- 값의 3x3 행렬과 함께 3x3 상관 행렬을 리턴하는 명령을 원한다. 나는 그것을 생략하기를 원한다. 즉, [1,6,1], [2,5, NaN] 간의 상관 관계는 [1,6]과 [2,5] 사이의 상관 관계 여야합니다.

누구나 할 수있는 좋은 Pythonic 방법이 있어야합니다.

+0

[6,5,4]를 , [1, 없음, 9]? – cel

+0

감사합니다. @cel. 변수를 열로, 관측을 행으로하고 싶습니다. 질문에 답하기 위해 [1,6,1], [2,5, NaN] 사이의 상관 관계는 [1,6]과 [2,5] 사이의 상관 관계 여야합니다. 나는 또한 질문을 편집했다. – splinter

답변

1

팬더 데이터 프레임에 데이터가있는 경우 df.corr()을 사용하면됩니다. docs 가입일

:

DataFrame.corr(method='pearson', min_periods=1)
계산 NA/NULL 값을 제외한 열 페어 상관이 두 벡터 사이의 피어슨 상관 관계 란

관련 문제