python散点図及び相関係数行列計算と相関検証

1561 ワード

python散点図及び相関係数行列計算
# -*- coding:utf-8 -*-
# __author__ = "LQ"
import matplotlib.pyplot as plt
import pandas as pd
import scipy.stats as stats
#       ,       
from DataAnalysis.TeachingModel.dbc import dbcConnect

def main(sql):
    df = dbcConnect.selectDf(sql)
    print(df)
    # pearson      
    corr = df.corr()
    print(corr)
    #         
    print(df.corr()[u'avg_getscore'])
    #          pearsonr    ,
    #     p-value,    Guba  Value       
     pearsonr = stats.pearsonr(df['avg_total_afterrequire_num'], df['avg_getscore'])
     print(pearsonr)

    #      
    pd.plotting.scatter_matrix(df, figsize=(8, 8),
                               c='k',
                               marker='+',
                               diagonal='hist',
                               alpha=0.8,
                               range_padding=0.1)
    plt.show()


if __name__ == '__main__':
    sql = '''SELECT
    avg_total_afterrequire_num,
    avg_total_beforerequire_num,
    avg_total_homework_num,
    avg_actual_homework_num,
    avg_total_exam_num,
    avg_actual_exam_num,
    avg_evaluate_num,
    avg_question_answer_num,
    avg_note_num,
    avg_error_num,
    avg_login_log_num,
    avg_question_times,
    avg_getscore
    FROM
    t_study_behavior_class
    WHERE
    avg_getscore > 0
    AND avg_getscore < 100'''
    main(sql)

カスタムメソッドdbcConnectは、次のブログにあります.https://blog.csdn.net/qq_30868737/article/details/103995174