pandas dataframe合并时的问题

  1. 使用函数:pd.concat([df1,df2])
    这样就可以将两个dataframe df1,df2合并
  2. 可选参数
    (1)ignore_index,默认是false ,但是会导致合并后的dataframe的索引错误,
ser1 = pd.Series(['A', 'B', 'C'])
ser2 = pd.Series(['D', 'E', 'F'])

pd.concat([ser1, ser2])

输出是这样的

0    A
1    B
2    C
0    D
1    E
2    F
dtype: object

可以注意到第一列的索引是乱的,将ignore_index设置为true就不会这样了

ser1 = pd.Series(['A', 'B', 'C'])
ser2 = pd.Series(['D', 'E', 'F'])

pd.concat([ser1, ser2],ignore_index=True)

#输出是这样的
0    A
1    B
2    C
3    D
4    E
5    F
dtype: object

(2)sort,当你合并的两个dataframe列索引不一致时,会出现选择sort,sort=False时,会直接把第二个dataframe比第一个多出来的列加在末尾,如果sort=True,则列索引会根据pandas自己的算法重新排列

(3)join,当你合并的两个dataframe列索引不一致时,需要选择join,
join=‘outer’ 保留两个dataframe所有的列,空缺值会用nan代替
join=‘inner’ 只保留两个dataframe都有数据的列

你可能感兴趣的:(pandas使用)