单变量分析绘图及回归分析绘图 综述代码模块单变量分析绘图数据直方图数据分布状态指定均值及协方差生成数据散点图观测多特征分析 回归分析绘图tips数据集读入绘制回归图离散型数据分析增加直方图后的回归图绘制 小结
综述
学生党整理一些关于数据分析的知识:整理了单变量分析绘图及回归分析绘图的部分代码。主要包括了数据直方图、数据分布状态、指定均值协方差生成数据、散点图绘制、多特征分析;绘制回归图、离散型数据分析及直方图散点图结合的回归图绘制。
代码模块调用库
import seaborn as snsimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom scipy import stats, integrate 单变量分析绘图 数据直方图通过数据直方图可以观测变量的分布状况
sns.set(color_codes=True)np.random.seed(sum(map(ord,"distributions")))x = np.random.normal(size=100)sns.distplot(x,kde=False)plt.show()
指定bins = 20
数据柱状图和曲线图表示数据分布状态
x = np.random.normal(6,size=200)sns.distplot(x,kde=False,fit=stats.gamma)plt.show() 指定均值及协方差生成数据 mean, cov = [0, 1], [(1, .5),(.5, 1)] #指定均值,协方差data = np.random.multivariate_normal(mean, cov,200)df = pd.DataFrame(data,columns=['x','y'])print(df)生成数据样例如下
xy0-0.8802101.25505110.191488-0.000265………1981.4999323.8816061990.8932391.196291散点图观测观测两个变量之间的分布关系最好用散点图
sns.jointplot(x='x',y='y',data=df)plt.show()该方式绘制的散点图包括了x,y的直方图
当数据量庞大时可以用hex图
数据量过大时,直接绘制散点图会导致多点重合无法分析的情况,采用hex图,可以将数据划分区域,用颜色深浅表示
分析多变量中各个变量之间的关系时,可以使用
sns.set()iris = pd.read_csv('iris.csv') #读入iris数据iris = sns.load_dataset("iris")sns.pairplot(iris)plt.show() 回归分析绘图 tips数据集读入 tips = pd.read_csv('tips.csv')np.random.seed(sum(map(ord, "regression")))tips = sns.load_dataset('tips')print(tips.head()) total_billtipsexsmokerdaytimesize016.991.01FemaleNoSunDinner2110.341.66MaleNoSunDinner3221.013.50MaleNoSunDinner3323.683.31MaleNoSunDinner2424.593.61FemaleNoSunDinner4绘制回归图绘制回归关系图时,常用regplot()和lmplot(),推荐使用regplot()。regplot()使用方便, lmplot()功能多,规范要求高。
sns.regplot(x = 'total_bill',y = 'tip',data = tips)plt.title('regplot')plt.show() sns.lmplot(x = 'total_bill',y = 'tip',data = tips)plt.title('lmplot')plt.show() 离散型数据分析直接绘图
sns.regplot(data=tips,x='size',y='tip')plt.show()
由于数据离散,对回归结果有影响,可以适当增加波动提高回归准确性
绘图知识整理部分主要针对绘图方法,具体在数据分析过程中使用哪种图片在之后具体的数据分析案例中详细说明。