gpt4 book ai didi

python - 计算矩阵与其转置的相关性

转载 作者:行者123 更新时间:2023-12-01 07:15:35 26 4
gpt4 key购买 nike

我正在尝试使用apply计算矩阵(此处为数据帧的行)与其转置的相关性。

代码如下:

import pandas as pd
from pprint import pprint
d = {'A': [1,0,3,0], 'B':[2,0,1,0], 'C':[0,0,8,0], 'D':[1,0,0,1]}
df = pd.DataFrame(data=d)
df_T = df.T
corr = df.apply(lambda s: df_T.corrwith(s))

相关变量的所有列都包含 NaN 条目。 ID喜欢了解为什么会出现 NaN。

谁能解释一下吗?

最佳答案

我认为你需要DataFrame.corr :

print (df.corr())
A B C D
A 1.000000 0.492366 0.942809 -0.408248
B 0.492366 1.000000 0.174078 0.301511
C 0.942809 0.174078 1.000000 -0.577350
D -0.408248 0.301511 -0.577350 1.000000

如果需要,您的解决方案需要相同的索引和列值:

df = pd.DataFrame(data=d).set_index(df.columns)
print (df)
A B C D
A 1 2 0 1
B 0 0 0 0
C 3 1 8 0
D 0 0 0 1

df_T = df.T

corr = df.apply(lambda s: df_T.corrwith(s))
print (corr)
A B C D
A -0.866025 -0.426401 -0.816497 0.000000
B NaN NaN NaN NaN
C 0.993399 0.489116 0.936586 -0.486664
D -0.471405 -0.522233 -0.333333 0.577350

关于python - 计算矩阵与其转置的相关性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57986224/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com