[英]Python merging data frames and renaming column values
在 python 中,我有一个看起来像这样的 df
Name ID
Anna 1
Sarah 2
Max 3
还有一个看起来像这样的df
Name ID
Dan 1
Hallie 2
Cam 3
如何合并 df 以使 ID 列看起来像这样
Name ID
Anna 1
Sarah 2
Max 3
Dan 4
Hallie 5
Cam 6
这只是一个最小的可重现示例。 我的实际数据集有 1000 个值。 我基本上是在合并数据帧,并希望 ID 以数字顺序(前一个数据帧的延续)而不是每次从一个重复。
连接两个 DataFrame, reset_index
并使用新索引分配“ID”
df_new = pd.concat((df1, df2)).reset_index(drop=True)
df_new['ID'] = df_new.index + 1
Output:
Name ID
0 Anna 1
1 Sarah 2
2 Max 3
3 Dan 4
4 Hallie 5
5 Cam 6
您可以使用ignore_index=True
连接数据帧,然后设置 ID 列:
df = pd.concat([df1, df2], ignore_index=True)
df['ID'] = df.index + 1
使用pd.concat
:
out = pd.concat([df1, df2.assign(ID=df2['ID'] + df1['ID'].max())], ignore_index=True)
print(out)
# Output
Name ID
0 Anna 1
1 Sarah 2
2 Max 3
3 Dan 4
4 Hallie 5
5 Cam 6
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.