用python进行统计分析(1)
- 导入库
import numpy as np import pandas as pd pip install pandas plotnine #我直接install plotnine报错,不是很懂 import plotnine as pn #统计分析工具 from plotnine import data from scipy import stats #sciPy 是基于numpy的科学计算库,stats用于统计数据 import statsmodels.api as sm # 用于回归分析 from statsmodels.formula.api import ols, glm, poisson
#使用DataFrames 和 formula strings 的方便接口 - 创建副本&忽略警告&控制输出
import copy import warnings warnings.filterwarnings("ignore") #使同一个cell中的结果一次性输出,不用挨个手工print from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all"
- 练习(使用plotnine自带的mtcars汽车数据集)
#连续变量的常见分布统计量 df.describe() #指定列的种类以及频数 df["vs"].value_counts() # apply 的用法 df.apply(np.sum,axis=1) # 对行求和,axis=1 就表示横轴;axis=0表示纵轴 df.apply(np.sum,axis=0) # 对列求和 df.apply(lambda x: sum(x.isnull())).sort_values # 缺失值统计
- describe 只能统计数值变量,若只想统计部分,可以用astype转换数据类型再describe
df["vs"] = df["vs"].value_astype(str) df.dtypes #此时返回的dtype是object #vs列被视为分类变量,用df["vs"].value.counts()
- 若要将连续变量和分类变量一起统计可用include
print(df.describe(include = "object"))
- describe 只能统计数值变量,若只想统计部分,可以用astype转换数据类型再describe