目录
  • 如何利用pandas读取csv数据并绘图
    • 绘制图像
    • 展示结果
  • pandas画pearson相关系数热力图
    • pearson相关系数计算函数

如何利用pandas读取csv数据并绘图

导包,常用的numpy和pandas,绘图模块matplotlib,

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111)

读取csv文件的数据,保存到numpy数组内

path_csv = "E:\\python\\python\\2021\\202104\\04091\\path_data.csv"
xa = np.array([42.0, 44.4, 43.1, 40.6])
ya = np.array([21.6, 21.2, 13.5, 14.0])
xa1 = np.array([10, 40])
ya1 = np.array([10, 40])
path_data_x = pd.read_csv(path_csv, header=None, usecols=[0])
path_data_y = pd.read_csv(path_csv, header=None, usecols=[1])
path_x = np.array(path_data_x)[:, 0]
path_y = np.array(path_data_y)[:, 0]

绘制图像

print(path_x[0])
print(path_y[0])
ax.plot(xa1, ya1, color='g', linestyle='', marker='.')
ax.plot(xa, ya, color='g', linestyle='-', marker='.')
ax.plot(path_x, path_y, color='m', linestyle='', marker='.')
plt.show()

展示结果

Python如何利用pandas读取csv数据并绘图

pandas画pearson相关系数热力图

pearson相关系数计算函数

  • data.corr()

该方法支持空值:np.nan

import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
data = pd.DataFrame({"A":[np.nan,2,9], "B":[4,14,6], "c":[987,8,9]})
f, ax= plt.subplots(figsize = (14, 10))
corr = data.corr()
# print(corr)
sns.heatmap(corr,cmap='RdBu', linewidths = 0.05, ax = ax)
# 设置Axes的标题
ax.set_title('Correlation between features')
plt.show()
plt.close()
f.savefig('sns_style_origin.jpg', dpi=100, bbox_inches='tight')

Python如何利用pandas读取csv数据并绘图

其中heatmap()方法中有annot参数,默认为False,不显示每个颜色的数字,如果设置为:annot=True, 则在每个热力图上显示数字。

效果如下:

Python如何利用pandas读取csv数据并绘图

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。