详解Pandas concat连接操作的5种使用方法
Pandas的concat函数主要用于数据的联接合并,它可以按照某个轴进行合并,可以选择联接的方式(外联接/内联接),可以重设索引等等。下面是pandas的concat函数的五种常用的使用方式:
1.简单纵向合并
传入参数是一个DataFrame列表,返回的是一个新的DataFrame,合并在一起。
import pandas as pd
# 创建两个dataframe
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])
# 合并两个dataframe
df = pd.concat([df1, df2])
print(df)
2.横向合并
如果你想要横向合并,只需要将参数axis设置为1即可:
import pandas as pd
# 创建两个dataframe
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['bird', 'polly'], ['monkey', 'george']], columns=['animal', 'name'])
# 合并两个dataframe
df = pd.concat([df1, df2], axis=1)
print(df)
3.通过keys参数创建多级索引
你可以在合并时通过keys参数来创建多级索引:
import pandas as pd
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])
df = pd.concat([df1, df2], keys=['df1', 'df2'])
print(df)
4.使用内联接和外联接
Pandas concat函数支持SQL类似的内联接和外联接.Merge函数和Join函数也可实现类似功能.
import pandas as pd
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['b', 3], ['c', 4], ['d', 5]], columns=['letter', 'number'])
df_outer = pd.concat([df1, df2], join='outer')
print("outer:\n", df_outer)
df_inner = pd.concat([df1, df2], join='inner')
print("inner:\n", df_inner)
5.忽略索引
如果不想保留原来的索引,可以通过参数ignore_index设置为True:
import pandas as pd
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])
df = pd.concat([df1, df2], ignore_index=True)
print(df)
这些就是Pandas concat连接操作的五种使用方法。希望对你有帮助。
(安装过程) 如何在新电脑上安装Ghost Win10操作系统 Windows 10 Ghost 安装指南(准备安装完成) 全网首发(图文详解1)
(准确性和优化) 联通的dns地址是多少 联通 DNS 设置 全网首发(图文详解1)