【发布时间】:2022-01-25 18:57:06
【问题描述】:
我正在尝试在“服务器”字段上使用 python 循环找出 Pearson 相关性。
逻辑如下- 第一个循环将针对每个主机进行迭代,第二个循环将针对该主机中的每个信号进行迭代并将该信号与所有其他主机的相同信号相关联,(第三个循环)如果相关性> 0.6,则需要将关系增加1 b/w 这些主机(第一个循环中的主机和第三个循环中的主机)。
我有如下 data.csv 文件
Server Signal1 Signal2
Host1 83.73 56.87
Host1 55.32 74.24
Host1 76.52 85.20
Host2 7.02 10.25
Host2 52.52 74.25
Host2 44.52 15.20
Host3 45.26 12.85
Host3 25.65 74.20
Host3 49.36 89.20
import pandas as pd
df=pd.read_csv("data.csv")
Server = df['Server'].tolist()
Signal1= df['Signal1'].tolist()
Signal2= df['Signal2'].tolist()
for device in Device:
for signal in Signal1:
if Device in Signal1:
corr, _ = pearsonr(device,signal)
print('Pearsons correlation: %.3f' % corr)
我尝试构建逻辑,但该代码不起作用,因为我无法在 for 循环中计算 Pearson 相关性并验证 ">0.6" 的条件。
【问题讨论】:
标签: python