利用python进行回归分析(2)数据读写及描述性统计




利用python进行回归分析(2)数据读写及描述性统计

上一章

准备工作

#加载可能用到的库
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib
import seaborn as sns
import pandas_profiling as pp

#读取数据
#csv格式
data=pd.read_csv("example.csv")
#如果数据不是放在项目根目录下也可以直接输入完整路径
data=pd.read_csv("D:\code\example.csv")

#excel格式
data = pd.read_excel("example.xlsx")
#可以通过sheet_name参数指定要读取的工作表,sheet_name默认为0,读取第一个
data = pd.read_excel("example.xlsx", sheet_name=1)
data = pd.read_excel("example.xlsx", sheet_name='Sheet2')
#header参数用于指定表头,默认为0,将第一行作为索引。如果没有表头可以设置为None
data = pd.read_excel("example.xlsx",header=2)
data = pd.read_excel("example.xlsx",header=None)

#查看数据
data
#查看数据类型
data.dtypes
#查看前5个数据
data.head(5)
#查看最后3个数据
data.tail(3)
#查看列名
data.columns
#查看缺失值
data[data.isna().values==True]
#数据摘要
data.info()

#导出数据
#excel
data.to_excel("example.xlsx")
#csv
data.to_csv("example.csv")

描述性统计

#非空数据个数
data.count()
#默认计算每一列的值,修改axis参数可以按行计算
data.count(axis = 1)
#求和
data.sum()
#平均值
data.mean()
#中位数
data.median()
#标准差
data.std()
#最小值
data.min()
#最大值
data.max()
#绝对值
data.abs()
#abs不能包含str,可以手动选择数值类型的列进行计算
data[{'var1','var2'}].abs()
#描述性统计摘要
data.describe()
#可以根据某列的数据汇总后再统计
data.groupby('var1').mean()

绘图

#折线图
data.plot()
#柱状图
data.plot.bar()
#水平柱状图
data.plot.barh()
#直方图
data.plot.hist()
#箱线图
data.plot.box()
#区域面积图
data.plot.area()
#饼图
data.plot.pie()
#散点图(需要设定x,y轴)
data.plot.scatter(x='var1', y='var0')
#Hexagonal Bin图,不知道咋翻译,需要设置xy轴
data.plot.hexbin(x='var1', y='var0')
#显示绘制的图像
plt.show()
#设置标题
plt.title('这是标题')
#设置x轴名称
plt.xlabel('这是x')
#设置y轴名称
plt.ylabel('这是y')
#保存图像
plt.savefig('figure1.png')
#绘制完成后最好关闭一下,否则下次绘制可能会出错
plt.close()
'''
绘图的参数比较多懒得写了,常见的有title(图像标题),figsize(图像尺寸),grid(网格线),legend(图例),style(绘图风格)等
'''

pandas_profiling库

算是偷懒的方式,pandas_profiling库直接生成一份数据报告,里面有数据分布、相关性图等常用的图和数据,可以不用自己调图像参数,比较省事。

#生成报告
report = pp.ProfileReport(data)
#导出为html文件
report.to_file('report1.html')

下一章



登录后评论

共有0条评论