python人工智能炒期货_2019最新某LXF《Python量化金融项目+就业爬虫人工智能项目实战课程》...

1,join方法

dataframe内置了join方法是一种快速合并的方法。它默认以index作为对齐的列。

1.1 how参数

join中的how参数和merge中的how参数一样,用来指定表合并保留数据的规则。

1 import pandas as pd

2 df1 = pd.DataFrame([[1,2,3],[1,10,20],[5,6,7],[3,9,0],[8,0,3]],columns=['x1','x2','x3'])

3 df2 = pd.DataFrame([[1,2],[1,10],[1,3],[4,6],[3,9]],columns=['x1','x4'])

4 print (df1)

5 print (df2)

6 df3 = pd.merge(df1,df2,how = 'left',on='x1')

7 print (df3)

8 df4 = pd.merge(df1,df2,how = 'right',on='x1')

9 print (df4)

10 df5 = pd.merge(df1,df2,how = 'inner',on='x1')

11 print (df5)

12 df6 = pd.merge(df1,df2,how = 'outer',on='x1')

13 print (df6)

结果如下:

1.2  on参数

在实际应用中如果右表的索引是左表的某一列的值,这时可以将右表的索引和

左表的列对齐合并这样的灵活方式进行合并。

left = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'],'key': ['K0', 'K1', 'K0', 'K1']})

right = pd.DataFrame({'C': ['C0', 'C1'],'D': ['D0', 'D1']},index=['K0', 'K1'])

result=left.join(right,on='key')

2, suffix 后缀参数

如果和表合并的过程中遇到有一列两个表都同名,合并的时候又都想保留下俩

,就可以用suffixes给每个表的重复列名增加后缀

result=pd.merge(left,right,on='k',suffixes=['_l','_r'])

注:lsuffix和rsuffix分别指定左表的后缀和右表的后缀。

3,组合多个dataframe

一次组合多个dataframe的时候可以传入元素为dataframe的列表或者tuple。

right2 =pd.dataframe({'v':[7,8,9]},index=['k1','k1','k2'])

result=left.join([right,roght2])

4,更新表的nan值

combine_first

如果一个表nan值,在另一个表相同位置(相同索引和相同列)可以找到,

则可以通过combline_first来更新数据

update

---------------------

作者:帅哥大叔

来源:CSDN

原文:https://blog.csdn.net/qq_42535601/article/details/86528094

版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值