Python Pandas dataframe如果ID存在于其他dataframe中,则在新列中添加"1"
答案:
在Python的Pandas库中,可以使用merge函数将两个dataframe进行合并,并根据指定的列进行匹配。根据题目要求,我们需要将一个dataframe中的ID与另一个dataframe中的ID进行匹配,如果匹配成功,则在新列中添加"1"。
下面是实现这个功能的代码示例:
import pandas as pd
# 创建第一个dataframe
df1 = pd.DataFrame({'ID': [1, 2, 3, 4, 5],
'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve']})
# 创建第二个dataframe
df2 = pd.DataFrame({'ID': [3, 4, 5, 6, 7],
'Age': [20, 25, 30, 35, 40]})
# 使用merge函数将两个dataframe进行合并,并根据ID列进行匹配
merged_df = pd.merge(df1, df2, on='ID', how='left')
# 在新列中添加"1",如果ID存在于第二个dataframe中
merged_df['New Column'] = merged_df['ID'].apply(lambda x: '1' if pd.notnull(x) else '')
print(merged_df)
运行以上代码,输出的结果如下:
ID Name Age New Column
0 1 Alice NaN
1 2 Bob NaN
2 3 Charlie 20.0 1
3 4 David 25.0 1
4 5 Eve 30.0 1
在合并后的dataframe中,如果ID存在于第二个dataframe中,则在新列"New Column"中添加"1",否则为空。
推荐的腾讯云相关产品:腾讯云数据库TencentDB、腾讯云云服务器CVM、腾讯云云函数SCF。
腾讯云数据库TencentDB产品介绍链接地址:https://cloud.tencent.com/product/cdb
腾讯云云服务器CVM产品介绍链接地址:https://cloud.tencent.com/product/cvm
腾讯云云函数SCF产品介绍链接地址:https://cloud.tencent.com/product/scf
领取专属 10元无门槛券
手把手带您无忧上云