皮尔森相关性系数的计算python代码
时间: 2023-12-20 20:13:37 浏览: 126
import numpy as np
def pearson_correlation(x, y):
"""
计算两个向量x和y的皮尔森相关性系数
"""
# 计算均值和标准差
x_mean = np.mean(x)
y_mean = np.mean(y)
x_std = np.std(x)
y_std = np.std(y)
# 计算协方差
cov = np.sum((x - x_mean) * (y - y_mean)) / len(x)
# 计算皮尔森相关性系数
corr = cov / (x_std * y_std)
return corr
# 示例
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 4, 6, 8, 10])
corr = pearson_correlation(x, y)
print("皮尔森相关性系数为:", corr) # 输出:1.0
相关问题
皮尔森相关性python
皮尔森相关性是一种用于衡量两个变量之间线性相关程度的方法。在Python中,可以使用pandas库中的DataFrame.corr方法来计算皮尔森相关系数。具体使用方法如下:
```python
df.corr(method="pearson")
```
其中,df是一个DataFrame对象,method参数指定计算的相关性方法,这里使用"pearson"表示计算皮尔森相关系数。
如果要同时获取相关系数的显著性检验P值矩阵,可以结合scipy库中的pearsonr函数来实现。具体代码如下:
```python
from scipy.stats import pearsonr
def GetPvalue_Pearson(x, y):
return pearsonr(x, y)[1]
df.corr(method=GetPvalue_Pearson)
```
这样就可以得到包含相关系数和P值的矩阵。
python皮尔森相关性分析
Python中可以使用pandas库的corr()函数进行皮尔森相关性分析。该函数的用法为:
```python
df.corr(method="pearson")
```
其中,df是一个DataFrame对象,method参数指定了使用皮尔森相关系数进行相关性分析。
此外,还可以结合scipy库的pearsonr()函数来获取相关系数的显著性检验P值矩阵。具体的代码如下:
```python
import scipy.stats as stats
def GetPvalue_Pearson(x, y):
return stats.pearsonr(x, y)[1]
df.corr(method=GetPvalue_Pearson)
```
这样可以得到相关系数矩阵和对应的显著性检验P值矩阵。
需要注意的是,皮尔森相关性分析是一种衡量两个变量之间线性相关性的统计方法,它的值范围在-1到1之间,接近-1表示负相关,接近1表示正相关,接近0表示无相关性。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [python 皮尔森相关系数(Pearson)](https://blog.csdn.net/small__roc/article/details/123519616)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文