Python CSV 数据分组:使用 pairwise_distances 计算相关性
以下是使用 Python 语言实现读取 csv 记录、计算相关性并分组的示例代码:
import pandas as pd
from sklearn.metrics.pairwise import pairwise_distances
# 读取 csv 文件
data = pd.read_csv('data.csv')
# 提取特征列
features = data.iloc[:, 1:]
# 计算记录之间的相关性
distances = pairwise_distances(features, metric='correlation')
# 将相关性>0.6 的记录分为一组
groups = []
for i in range(len(distances)):
group = [j for j in range(len(distances)) if distances[i][j] > 0.6]
if group not in groups:
groups.append(group)
# 输出分组结果
for group in groups:
print(data.iloc[group])
print('=' * 50)
其中,'data.csv' 是待处理的 csv 文件,特征列从第二列开始。使用 pairwise_distances 函数计算相关性时,采用的是相关系数(Pearson correlation coefficient),其值在 -1 到 1 之间,值越接近 1 表示相关性越强。本例中,将相关性大于 0.6 的记录分为一组。
原文地址: https://www.cveoy.top/t/topic/nfK4 著作权归作者所有。请勿转载和采集!