【发布时间】:2016-11-20 04:36:53
【问题描述】:
我最近开始使用pandas。谁能解释一下.corrwith()与Series和DataFrame在函数行为上的区别?
假设我有一个DataFrame:
frame = pd.DataFrame(data={'a':[1,2,3], 'b':[-1,-2,-3], 'c':[10, -10, 10]})
我想计算特征“a”和所有其他特征之间的相关性。 我可以通过以下方式做到这一点:
frame.drop(labels='a', axis=1).corrwith(frame['a'])
结果将是:
b -1.0
c 0.0
但非常相似的代码:
frame.drop(labels='a', axis=1).corrwith(frame[['a']])
生成完全不同且不可接受的表:
a NaN
b NaN
c NaN
所以,我的问题是:为什么在 DataFrame 作为第二个参数的情况下,我们会得到如此奇怪的输出?
【问题讨论】: