pandas在dataframe中提供了丰富的统计、合并、分组、缺失值等操作函数。
1.统计函数
df.count() #非空元素计算
df.min() #最小值
df.max() #最大值
df.idxmin() #最小值的位置,类似于R中的which.min函数
df.idxmax() #最大值的位置,类似于R中的which.max函数
df.quantile(0.1) #10%分位数
df.sum() #求和
df.mean() #均值
df.median() #中位数
df.mode() #众数
df.var() #方差
df.std() #标准差
df.mad() #平均绝对偏差
df.skew() #偏度
df.kurt() #峰度
df.describe() #一次性输出多个描述性统计指标
2.分组统计
依托group by
单列如:df.groupby(‘sex’).sum()
通过多个列进行分组形成一个层次索引,然后执行函数:df.groupby([‘sex’,’B’]).sum()
案例:
#!usr/bin/env python#_*_ coding:utf-8 _*_import pandas as pdimport pymysqldef get_data():
conn=pymysql.connect(
host='192.168.1.xxx',
port=3306,
user='root',
passwd='xxx',
db='kmind',
charset='utf8'
)
sqldb="SELECT socre,review_star,review_author_id,review_author_level as count2 FROM source_mg_mfw_socre_ljon_01 WHERE\
review_author_id IN (select review_author_id from (SELECT review_author_id,COUNT(*) AS count1 FROM\
source_mg_mfw_socre_ljon_01 GROUP BY review_author_id HAVING count1>3)A)and socre!=' '"
pd_data=pd.read_sql(sqldb,conn)
pd_data["subtract"]=(pd_data["socre"]-pd_data["review_star"]*2)**2
print(pd_data.head(5)) #获取对应统计效果描述
print(pd_data.groupby("review_author_id").mean().describe())
print(pd_data.groupby("review_author_id").mad().describe())
print(len(pd_data.loc[pd_data["subtract"]<0.983275]))
print(pd_data.loc[pd_data["subtract"]<0.983275])if __name__=="__main__":
get_data()对应的原始数据结构
对应的部分数据描述
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦

