那如果有12列特征,想要计算前11列特征分别与第12列的皮尔逊系数,编写详细代码

动态 未结 0 91
小小草
小小草 LV1 2023年9月23日 23:40 发表
以下是Python中计算前11列特征与第12列的皮尔逊相关系数的完整代码: ```python import numpy as np def pearson_correlation(x, y): """ 计算两个向量x和y之间的皮尔逊相关系数。 :param x: 第一个向量 :param y: 第二个向量 :return: 皮尔逊相关系数 """ # 计算均值 x_mean = np.mean(x) y_mean = np.mean(y) # 计算分子和分母 numerator = np.sum((x - x_mean) * (y - y_mean)) denominator = np.sqrt(np.sum((x - x_mean) ** 2) * np.sum((y - y_mean) ** 2)) # 计算皮尔逊相关系数 if denominator == 0: return 0 else: return numerator / denominator # 生成随机数据,包含12列特征和1列标签 data = np.random.rand(100, 13) # 分离特征和标签 X = data[:, :-1] y = data[:, -1] # 计算每一列特征与标签之间的皮尔逊相关系数 for i in range(X.shape[1]): corr = pearson_correlation(X[:, i], y) print("Feature %d correlation with label: %.4f" % (i+1, corr)) ``` 该代码首先生成了一个包含12列特征和1列标签的随机数据集。然后,我们将特征和标签分离开来。接下来,我们使用一个for循环来计算每一列特征与标签之间的皮尔逊相关系数。在每次迭代中,我们调用上面定义的pearson_correlation函数,并传入当前特征列和标签列作为参数。最后,我们打印出每个特征与标签之间的皮尔逊相关系数。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复