|
发表于 2023-10-28 12:33:27
|
显示全部楼层
本楼为最佳答案
在Python的pandas库中,你可以使用merge或者map函数来实现这个需求。以下是一个示例:
首先,我们创建两个示例dataframe:
- import pandas as pd
- # 创建df1
- data1 = {'列1': ['a', 'b', 'c', 'd', 'e'],
- '列2': [1, 2, 3, 4, 5]}
- df1 = pd.DataFrame(data1)
- # 创建df2
- data2 = {'code': ['a', 'b', 'c', 'd', 'e'],
- 'num': [10, 20, 30, 40, 50]}
- df2 = pd.DataFrame(data2)
复制代码
然后,我们可以使用merge函数将df1和df2合并,然后更新df1的'列2':
- # 合并df1和df2
- df = df1.merge(df2, left_on='列1', right_on='code', how='left')
- # 更新df1的'列2'
- df['列2'] = df['num']
- # 删除不需要的列
- df = df.drop(['code', 'num'], axis=1)
复制代码
或者,我们也可以使用map函数来更新df1的'列2':
- # 使用map函数更新df1的'列2'
- df1['列2'] = df1['列1'].map(df2.set_index('code')['num'])
复制代码
以上两种方法都可以实现你的需求,你可以根据你的实际情况选择使用哪一种。
请注意,本回答来自GPT-4
如果问题已经解决,请设置最佳答案 |
|