Pandas系列教程(5)Pandas数据统计函数
Pandas数据统计函数
import pandas as pd file_path = "../../datas/files/beijing_tianqi_2018.csv" df = pd.read_csv(file_path) # 替换温度的后缀℃, 并转为int32(修改列) df.loc[:, 'bWendu'] = df.loc[:, 'bWendu'].str.replace('℃', '').astype('int32') df.loc[:, 'yWendu'] = df.loc[:, 'yWendu'].str.replace('℃', '').astype('int32') print(df.head(3))
import pandas as pd file_path = "../../datas/files/beijing_tianqi_2018.csv" df = pd.read_csv(file_path) # 替换温度的后缀℃, 并转为int32(修改列) df.loc[:, 'bWendu'] = df.loc[:, 'bWendu'].str.replace('℃', '').astype('int32') df.loc[:, 'yWendu'] = df.loc[:, 'yWendu'].str.replace('℃', '').astype('int32') # 打印前三行 print('*' * 25, '打印前三行的数据', '*' * 25) print(df.head(3)) # 提取所有数字列统计结果 print('*' * 25, '提取所有数字列统计结果', '*' * 25) print(df.describe()) # 查看单个Series的数据 print('*' * 25, '查看单个Series的数据', '*' * 25) print(df['bWendu'].mean()) # 最高温 print(df['bWendu'].max()) # 最低温 print(df['yWendu'].min())
import pandas as pd file_path = "../../datas/files/beijing_tianqi_2018.csv" df = pd.read_csv(file_path) # 替换温度的后缀℃, 并转为int32(修改列) df.loc[:, 'bWendu'] = df.loc[:, 'bWendu'].str.replace('℃', '').astype('int32') df.loc[:, 'yWendu'] = df.loc[:, 'yWendu'].str.replace('℃', '').astype('int32') # ---------------------- 1 唯一去重性 ------------------------- # # 一般不用于数值列,而是枚举,分类列 print('*' * 25, '唯一去重性', '*' * 25) print(df['fengxiang'].unique()) print(df['tianqi'].unique()) print(df['fengli'].unique()) # ---------------------- 2 按值计数 ------------------------- # print('*' * 25, '按值计数', '*' * 25) print(df['fengxiang'].value_counts()) print(df['tianqi'].value_counts()) print(df['fengli'].value_counts())
用途(超级厉害):
-
两支股票,是不是同涨同跌?程度多大?正相关还是负相关?
-
产品销量的波动,跟那些因素正相关,负相关,程度有多大?
来自知乎,对于两个变量X,Y
-
协方差:
衡量同向反向程度
,如果协方差为正,说明X,Y同向变化。协方差越大说明同向程度越高;如果协方差为负,说明X,Y反向运动,协方差越小说明反向程度越高。 -
相关系数:
衡量相似程度
,当他们的相关系数为1时,说明两个变量变化是的正向相似度最大,当相关系数为-1时,说明两个变量的反向相似度最大
import pandas as pd file_path = "../../datas/files/beijing_tianqi_2018.csv" df = pd.read_csv(file_path) # 替换温度的后缀℃, 并转为int32(修改列) df.loc[:, 'bWendu'] = df.loc[:, 'bWendu'].str.replace('℃', '').astype('int32') df.loc[:, 'yWendu'] = df.loc[:, 'yWendu'].str.replace('℃', '').astype('int32') # 协方差矩阵 print('*' * 25, '协方差矩阵', '*' * 25) print(df.cov()) # 相关系数矩阵 print('*' * 25, '相关系数矩阵', '*' * 25) print(df.corr()) # 单独查看空气质量和最高温度的相关系数 print('*' * 25, '单独查看空气质量和最高温度的相关系数', '*' * 25) print(df['aqi'].corr(df['bWendu'])) print(df['aqi'].corr(df['yWendu'])) # 空气质量和温度差的相关系数 print('*' * 25, '空气质量和温度差的相关系数', '*' * 25) print(df['aqi'].corr(df['yWendu'] - df['bWendu']))