加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

10招!看骨灰级Pythoner怎样玩转Python

发布时间:2019-04-16 00:57:26 所属栏目:建站 来源:读芯术
导读:pandas是基于numpy构建的,使数据说明事变变得更快更简朴的高级数据布局和操纵器材。本文为各人带来10个玩转Python的小能力,学会了分分钟通关变大神! 1. read_csv 每小我私人都知道这个呼吁。但假如你要读取很大的数据,实行添加这个参数:nrows = 5,以便在

构建模子时,你也许但愿解除具有许多缺失值或满是缺失值的行。你可以行使.isnull()和.sum()来计较指定列中缺失值的数目。

  1. import pandas as pd 
  2. import numpy as np 
  3. df = pd.DataFrame({ ‘id’: [1,2,3], ‘c1’:[0,0,np.nan], ‘c2’: [np.nan,1,1]}) 
  4. dfdf = df[[‘id’, ‘c1’, ‘c2’]] 
  5. df[‘num_nulls’] = df[[‘c1’, ‘c2’]].isnull().sum(axis=1) 
  6. df.head() 

8. 选择具有特定ID的行

在SQL中,我们可以行使SELECT * FROM ... WHERE ID('A001','C022',...)来获取具有特定ID的记录。假如想用Pandas做同样的工作,你可以

  1. dfdf_filter = df[‘ID’].isin([‘A001’,‘C022’,...]) 
  2. df[df_filter] 

9. Percentile groups

你有一个数字列,并但愿将该列中的值分类为组,譬喻将列的前5%,分为组1,前5-20%分为组2,前20%-50%分为组3,最后50%分为组4。虽然,你可以用pandas.cut来做,但这里提供另一个选择:

  1. import numpy as np 
  2. cut_points = [np.percentile(df[‘c’], i) for i in [50, 80, 95]] 
  3. df[‘group’] = 1 
  4. for i in range(3): 
  5.     df[‘group’] = df[‘group’] + (df[‘c’] < cut_points[i]) 
  6. # or <= cut_points[i] 

这个指令使计较机运行的很是快(没有行使应用成果)。

10. to_csv

这也是每小我私人城市行使的呼吁。这里指出两个能力。 第一个是

  1. print(df[:5].to_csv()) 

你可以行使此呼吁精确地打印出写入文件的前五行数据。

另一个能力是处理赏罚殽杂在一路的整数和缺失值。假如列同时包括缺失值和整数,则数据范例仍将是float而不是int。导出表时,可以添加float_format ='%。0f'将全部浮点数舍入为整数。假如只想要全部列的整数输出,请行使此能力,你将挣脱全部令人苦恼的'.0'。

【编辑保举】

  1. Fedora 提出同一流程,弃用上千 Python 2 软件包更可控
  2. Python并发:线程和锁
  3. 百道Python口试题实现,搞定Python编程就靠它
  4. 你爱 “Python”的身材,照旧“R”的魂灵?
  5. Python编程中3个常用的数据布局和算法
【责任编辑:赵宁宁 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读