【发布时间】:2022-01-06 09:06:53
【问题描述】:
问题:根据第三列的值创建 Pearson 相关系数。
首先,我有一个包含 3 列的数据框。 A、B、C
上校。 A 和 B 包含 float64 类型,而在 C 中有对象。 我想得到 col A 和 B 的 Pearson 相关系数。
print(df['A'].corr(df['B'],method='pearson')) --> 这适用于整个列。
在下一步我挣扎。 C 列只有 2 个值。我们称它们为 c1 和 c2。 我现在想获得 c1 和 c2 的系数。 我试过了
print(df['A']&df['C']=='c1').corr((df['B']&df['C']=='c1'),method='pearson ')
对于 c2 也是一样的。 记录的错误是: TypeError: unsupported operand type(s) for &: 'float' and 'str' 如何在不拆分数据框的情况下获得两个系数?
提前致谢
【问题讨论】:
-
为什么不创建一个包含所有系数的新列,然后使用
df['new'][df['C']=='c1']选择您需要的行?
标签: python pearson-correlation pearson