📅  最后修改于: 2023-12-03 14:54:39.687000             🧑  作者: Mango
在 Pandas 中,有时我们需要将多个 DataFrame 或 Series 数据按列合并成一个大的 DataFrame,这个过程就称为按列加入。在本文中,我们将介绍如何在 Python 中使用 Pandas 实现按列加入。
为了演示如何进行按列加入,在本文中我们先创建几个DataFrame数据:
import pandas as pd
# DataFrame1
data1 = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 20, 30, 18]}
df1 = pd.DataFrame(data1)
# DataFrame2
data2 = {'name': ['Ella', 'Frank', 'George', 'Henry'],
'age': [22, 27, 18, 24]}
df2 = pd.DataFrame(data2)
# Series1
data3 = pd.Series([45, 32, 27, 18], name='score')
df1 和 df2 都有 'name' 和 'age' 两列数据,我们将它们按列合并,并将一列 Series1 合并到最终的 DataFrame 中。
接下来,我们使用 Pandas 的 concat 函数,将 df1 和 df2 按列合并:
# 将df1和df2按列合并
df = pd.concat([df1, df2], axis=1)
print(df)
输出结果如下:
name age name age
0 Alice 25 Ella 22
1 Bob 20 Frank 27
2 Charlie 30 George 18
3 David 18 Henry 24
可以看到,我们得到了一个新的 DataFrame,其中包含了 df1 和 df2 的所有列。
接下来,我们将 Series1 合并到最终的 DataFrame 中:
# 将df和Series1按列合并
df = pd.concat([df, data3], axis=1)
print(df)
输出结果如下:
name age name age score
0 Alice 25 Ella 22 45
1 Bob 20 Frank 27 32
2 Charlie 30 George 18 27
3 David 18 Henry 24 18
我们成功的将 Series1 合并到了最终的 DataFrame 中,其中 'score' 列的名字即是 Series1 的名字。
在 Pandas 中,使用 concat 函数可以将多个 DataFrame 或 Series 按列合并。需要注意的是,合并的 DataFrame 或 Series 的行数必须相同,否则将会产生缺失值。