zoukankan      html  css  js  c++  java
  • python 皮尔森相关系数

    皮尔森理解

     皮尔森相关系数(Pearson correlation coefficient)也称皮尔森积矩相关系数(Pearson product-moment correlation coefficient) ,是一种线性相关系数。皮尔森相关系数是用来反映两个变量线性相关程度的统计量。相关系数用r表示,其中n为样本量,分别为两个变量的观测值和均值。r描述的是两个变量间线性相关强弱的程度。r的绝对值越大表明相关性越强。

    简单的相关系数的分类

    • 0.8-1.0 极强相关
    • 0.6-0.8 强相关
    • 0.4-0.6 中等程度相关
    • 0.2-0.4 弱相关
    • 0.0-0.2 极弱相关或无相关

     r描述的是两个变量间线性相关强弱的程度。r的取值在-1与+1之间,若r>0,表明两个变量是正相关,即一个变量的值越大,另一个变量的值也会越大;若r<0,表明两个变量是负相关,即一个变量的值越大另一个变量的值反而会越小。r 的绝对值越大表明相关性越强,要注意的是这里并不存在因果关系。

    python 实现

    # encoding:utf-8
    import pandas as pd
    from pandas import DataFrame
    import matplotlib.pyplot as plot
    import math
    #target_url = ("https://archive.ics.uci.edu/ml/machine-learning-databases/undocumented/connectionist-bench/sonar/sonar.all-data")
    #rockVMines = pd.read_csv(target_url ,header=None,prefix="V") #prefix前缀
    rockVMines = pd.read_csv('../rockdata.txt',header=None,prefix="V")  #prefix前缀
    row2 = rockVMines.iloc[1,0:60]
    row3 = rockVMines.iloc[2,0:60]
    n = len(row2)
    mean2 = row2.mean()
    mean3 = row3.mean()
    t2=0 ; t3=0;t1=0
    for i in range(n):
    t2 += (row2[i] - mean2) * (row2[i] - mean2) / n
    t3 += (row3[i] - mean3) * (row3[i] - mean3) / n
    r23=0
    for i in range(n):
    r23 += (row2[i] - mean2)*(row3[i] - mean3)/(n* math.sqrt(t2 * t3))
    print r23

    corMat = DataFrame(rockVMines.corr())  #corr 求相关系数矩阵
    print corMat
    plot.pcolor(corMat)
    plot.show()



  • 相关阅读:
    Bootstrap3系列:按钮式下拉菜单
    Bootstrap3系列:按钮组
    Bootstrap3系列:下拉菜单
    CSS系列:CSS常用样式
    Entity Framework中使用IEnumerable<T>、IQueryable<T>及IList<T>的区别
    ASP.NET中Session的sessionState 4种mode模式
    ASP.NET MVC系列:Area
    Sql Server系列:SQL语句查询数据库中表、视图、存储过程等组成
    ASP.NET MVC系列:Model
    jQuery LigerUI系列:ligerComboBox
  • 原文地址:https://www.cnblogs.com/lxnz/p/7098954.html
Copyright © 2011-2022 走看看