数据分析
以实战为例
Week.D.Awn
人云亦云,并不会让你变得有多优秀,而会让你越来越随大流。
展开
-
pandas中关于DataFrame的groupby方法,如何取出分组的ID(行名称)和ID对应的个数
groupby的函数定义:DataFrame.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, **kwargs)[source]有关于groupby的拆分问题实在难找,经过多次测试,终于得到很好的解决办法。见示例代码:#按A列进行分组,得到分...原创 2018-08-03 17:09:47 · 35726 阅读 · 8 评论 -
pandas中关于DataFrame根据ID名称取出某列的数据集
除了可以用上一篇介绍的groupby方法以外,还可以使用df的query查询。 比如:#查找UNIT_ID列中值为“10102”的所有行res_df = df.query('UNIT_ID == "10102"')query还可以级联使用:#查找UNIT_ID列中值为“10102”并且GA_ID列中值为“910”的所有行res_df = df.query('UNIT_ID...原创 2018-08-03 17:22:57 · 11325 阅读 · 0 评论 -
读取csv文件并转换为DataFrame格式
逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。准备好csv文件。csv_file = "yourfilename.csv"csv_data = pd.read_csv(csv_file, low_memory = False)#防止弹出警告csv_df = ...原创 2018-08-03 15:55:03 · 65086 阅读 · 3 评论 -
pandas中关于DataFrame计算时间差(加减)
Dataframe中的时间是不能直接进行相加减的。如果将两列时间进行加减,会弹出类型错误:TypeError: unsupported operand type(s) for -: 'str' and 'str'所以需要先用pandas的to_datetime()方法,转化成时间格式进行加减,然后再转换成df格式new_df = pd.DataFrame(pd.to_datetim...原创 2018-08-03 17:36:59 · 68711 阅读 · 8 评论 -
pandas中关于DataFrame行,列显示不完全(省略)的解决办法
有时候DataFrame中的行列数量太多,print打印出来会显示不完全。就像下图这样:列显示不全:行显示不全:添加如下代码,即可解决。#显示所有列pd.set_option('display.max_columns', None)#显示所有行pd.set_option('display.max_rows', None)#设置value的显示长度为100,默...原创 2018-08-03 16:19:50 · 218080 阅读 · 26 评论 -
关于matplotlib的种种(中文支持,设置坐标名称、长度、范围、字体、时间精度、百分比显示、颜色,图片保存、大小设置)(持续更新)
ps:画完图后要用plt.show()才会显示出图来哦!1.中文支持# 用来正常显示中文标签plt.rcParams['font.sans-serif'] = ['SimHei']# 用来正常显示负号plt.rcParams['axes.unicode_minus'] = False2.设置图标题和x,y轴的坐标名称plt.title("我是标题&am原创 2018-08-03 17:58:12 · 11760 阅读 · 1 评论 -
dataframe根据指定的列名筛选df
示例代码:d1 = data[(data['ENTITY']=='D:\\') & (data['TARGET_ID']==184 )]原创 2020-04-15 09:23:57 · 6783 阅读 · 0 评论 -
dataframe修改列名
第一种方式直接赋值df.columns = ["xx", "yy"]第二种方式对指定列修改名称,需要加上inplace=Truedf.rename(columns={'COLLECTTIME':'ds'},inplace=True)df.rename(columns={'VALUE':'y'},inplace=True)...原创 2020-04-14 16:01:07 · 1149 阅读 · 0 评论 -
pandas中关于DataFrame去掉重复行和NaN行
1.去掉重复行使用pandas自带的drop_duplicates方法:norepeat_df = df.drop_duplicates(subset=['A_ID', 'B_ID'], keep='first')#去掉UNIT_ID和KPI_ID列中重复的行,并保留重复出现的行中第一次出现的行 补充: 当keep=False时,就是去掉所有的重复行 当keep=‘f...原创 2018-08-03 16:50:45 · 14328 阅读 · 3 评论