pandas的concat使用

1.连接两个Series对象,且参数全为默认的情况下:

import pandas as pd
import numpy as np

s1=pd.Series([100,200,300],index=['a','b','c'])
s2=pd.Series([500,600,700],index=['a','b','c'])
print pd.concat([s1,s2])

E:\pycharm\workspace\venv\Scripts\python.exe E:/pycharm/workspace/20190508/pandas_concat_demo.py
a    100
b    200
c    300
a    500
b    600
c    700
dtype: int64

Process finished with exit code 0

2.连接两个DataFrame对象

import pandas as pd
import numpy as np

#s1=pd.Series([100,200,300],index=['a','b','c'])
#s2=pd.Series([500,600,700],index=['a','b','c'])
#print pd.concat([s1,s2])
df1=pd.DataFrame([[100,200,300],[110,120,130],[210,220,230]])
df2=pd.DataFrame([[10,20,30],[11,12,13],[21,22,23]])
print pd.concat([df1,df2])

E:\pycharm\workspace\venv\Scripts\python.exe E:/pycharm/workspace/20190508/pandas_concat_demo.py
     0    1    2
0  100  200  300
1  110  120  130
2  210  220  230
0   10   20   30
1   11   12   13
2   21   22   23

Process finished with exit code 0


3.参数默认的情况下都是直接沿0轴追加的,而且上面的例子是结构一样的,如果结构不一样呢?

import pandas as pd
import numpy as np

s1=pd.Series([100,200,300],index=['a','b','c'])
#s2=pd.Series([500,600,700],index=['a','b','c'])
#print pd.concat([s1,s2])
df1=pd.DataFrame([[100,200,300],[110,120,130],[210,220,230]])
#df2=pd.DataFrame([[10,20,30],[11,12,13],[21,22,23]])
print pd.concat([df1,s1])

E:\pycharm\workspace\venv\Scripts\python.exe E:/pycharm/workspace/20190508/pandas_concat_demo.py
     0      1      2
0  100  200.0  300.0
1  110  120.0  130.0
2  210  220.0  230.0
a  100    NaN    NaN
b  200    NaN    NaN
c  300    NaN    NaN

Process finished with exit code 0


4.那如何让它按指定轴方向连接呢?设定参数axis=1即可让其沿1轴方向连接

import pandas as pd
import numpy as np

s1=pd.Series([100,200,300],index=['a','b','c'])
#s2=pd.Series([500,600,700],index=['a','b','c'])
#print pd.concat([s1,s2])
df1=pd.DataFrame([[100,200,300],[110,120,130],[210,220,230]])
#df2=pd.DataFrame([[10,20,30],[11,12,13],[21,22,23]])
print pd.concat([df1,s1],axis=1)

E:\pycharm\workspace\venv\Scripts\python.exe E:/pycharm/workspace/20190508/pandas_concat_demo.py
       0      1      2      0
0  100.0  200.0  300.0    NaN
1  110.0  120.0  130.0    NaN
2  210.0  220.0  230.0    NaN
a    NaN    NaN    NaN  100.0
b    NaN    NaN    NaN  200.0
c    NaN    NaN    NaN  300.0

Process finished with exit code 0

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值