CSV表格融合

2019-04-25 06:54:18来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

常用表格融合函数

1 merge()

用于融合的函数

https://blog.csdn.net/brucewong0516/article/details/82707492

pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None,

         left_index=False, right_index=False, sort=True,

         suffixes=('_x', '_y'), copy=True, indicator=False,

         validate=None)

 

融合原则 :若不指定左右,则必须是key中相同的值才可以融合(左右指的是要融合的数组不是key

           若指定了左右,则指定的一列必须有,另一列继续融合,出现两个及以上相同的不会丢失。若两边都有相同的,则最终个数是按乘法算。比如当按左边融合时,最终的个数不一定是左边的id个数,应该是每个id对应数量乘积之和

           若指定的是outer,则是最大限度的融合,实际上是左融合和右融合的并集

           若指定的是inner,则是最小限度的融合,实际上是左融合和右融合的交集

注意:how的参数必须是 leftright

2 concat()

当dataframe格式赋给list后,可以用concat()函数将其转化成dataframe格式的数据 ,其中list的每个元素都有dataframe的结构

这里的赋值是指必须是值赋给对应的列名才有效,直接append()列名无效

1 for item in x:    # 这里的item是x中的一个个元素,都是由key:values的结构构成  item是人群定向
2     if len(item.split(":")) > 1 :
3         df[item.split(":")[0]]=item.split(":")[1]  # df[] 内的,都是df中已经存在的列名
4         df['all']=0
5     else:
6         df['all']=1
7 renqundingxiang.append(df)  # 通过append将dataframe的类型赋给列list类型  每个item都最后都是renqundingxiang list 中的一个元素

 3 groupby ()

非常方便由于计算某一个量的出现次数

下面代码中count列即每个年月的出现次数

1 test_sample['yearmonth'] = test_sample['createtime'].apply(fenge)
2 test_sample['jishu'] = 1
3 tmp = test_sample.groupby(['yearmonth'])['jishu'].agg(['count']).reset_index()

 


原文链接:https://www.cnblogs.com/xxswkl/p/10752007.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:len(x) 击败 x.len(),从内置函数看 Python 的设计思想

下一篇:Python数值运算与赋值的快捷方式