• 手机站
  • 收藏
聚培教育网合作机构 > 大连达内教育
大连达内教育
400-998-6158
大连达内教育是一家由留学海归创办的高端职业教育培训机构,是中国人才培养平台、人才输送平台。
大连达内教育

python分析包pandas使用小技巧有哪些

python学习网

更新时间:2021-10-28 浏览:105
核心提示:Pandas最开始被做为金融业数据统计分析专用工具而研发出去,因而,pandas为时间序列分析剖析带来了非常好的适用

掌握python的朋友都了解,Pandas是python的一个数据统计分析包,最开始由AQR Capital Management于2008年4月开发设计,并于2009年底开源系统出去,现阶段由致力于Python数据文件开发设计的PyData开发设计team再次开发设计和维护保养,归属于PyData新项目的一部分。Pandas最开始被做为金融业数据统计分析专用工具而研发出去,因而,pandas为时间序列分析剖析带来了非常好的适用。

即然有pandas那么优异的专用工具,应用它的人也会许多 ,今日,python培训机构的我就为大伙儿梳理梳理了一些工作上使用到的pandas使用技巧,便捷更高效率地完成数据统计分析。

1.测算自变量缺少率

df=pd.read_csv('titanic_train.csv')

def missing_cal(df):

"""

df :数据

return:每一个字符串的缺少率

"""

missing_series = df.isnull().sum()/df.shape[0]

missing_df = pd.DataFrame(missing_series).reset_index()

missing_df = missing_df.rename(columns={'index':'col',

0:'missing_pct'})

missing_df = missing_df.sort_values('missing_pct',ascending=False).reset_index(drop=True)

return missing_df

missing_cal(df)

假如想要测算样品的缺少率遍布,只需再加上主要参数axis=1.

2.获得排序里*值所属的行方式

分成排序中有重复值和无重复值二种。无重复值的状况。

df = pd.DataFrame({'Sp':['a','b','c','d','e','f'], 'Mt':['s1', 's1', 's2','s2','s2','s3'], 'Value':[1,2,3,4,5,6], 'Count':[3,2,5,10,10,6]})

df

df.iloc[df.groupby(['Mt']).apply(lambda x: x['Count'].idxmax())]

先按Mt列开展排序,随后对排序以后的数据信息框应用idxmax函数取下Count*值所属的列,再用iloc位置数据库索引将行取下。有重复值的状况

df["rank"] = df.groupby("ID")["score"].rank(method="min", ascending=False).astype(np.int64)

df[df["rank"] == 1][["ID", "class"]]

对ID开展排序以后再对成绩运用rank涵数,成绩同样的状况会授予同样的排行,随后取下排行为1的数据信息。

3.两列合拼为一行

df = pd.DataFrame({'id_part':['a','b','c','d'], 'pred':[0.1,0.2,0.3,0.4], 'pred_class':['women','man','cat','dog'], 'v_id':['d1','d2','d3','d1']})

df.groupby(['v_id']).agg({'pred_class': [', '.join],'pred': lambda x: list(x),

'id_part': 'first'}).reset_index()

4.删掉包括特殊字符串数组所属的行

df = pd.DataFrame({'a':[1,2,3,4], 'b':['s1', 'exp_s2', 's3','exps4'], 'c':[5,6,7,8], 'd':[3,2,5,10]})

df[df['b'].str.contains('exp')]

5.同组排列

df = pd.DataFrame([['A',1],['A',3],['A',2],['B',5],['B',9]], columns = ['name','score'])

详细介绍二种高效率地组内排列的方式 。

df.sort_values(['name','score'], ascending = [True,False])

df.groupby('name').apply(lambda x: x.sort_values('score', ascending=False)).reset_index(drop=True)

6.挑选 指定形式的列

drinks = pd.read_csv('data/drinks.csv')

# 挑选 全部标值型的列

drinks.select_dtypes(include=['number']).head()

# 挑选 全部字符型的列

drinks.select_dtypes(include=['object']).head()

drinks.select_dtypes(include=['number','object','category','datetime']).head()

# 用 exclude 关键词清除特定的基本数据类型

drinks.select_dtypes(exclude=['number']).head()

最终实际上有关pandas的技能有许多 ,期待对这种有兴趣的朋友可以共享给大伙儿,共同奋斗,共同学习。达内教育python培训学校提示每一个it发烧友:假如你愿意在短期内快速入门,成功把握一门技术性,提议或是努力学习视頻。多训练,多动手能力。

更多>同类资讯
更多>相关课程
顶部