在pandas中,可以使用map()
函数来映射不同dataframe基于datetime的列。map()
函数可以接受一个字典作为参数,字典的键是要映射的值,字典的值是映射后的值。
以下是一个示例代码,演示如何在pandas中映射不同dataframe基于datetime的列:
import pandas as pd
# 创建两个示例dataframe
df1 = pd.DataFrame({'date': ['2022-01-01', '2022-01-02', '2022-01-03'],
'value': [1, 2, 3]})
df2 = pd.DataFrame({'date': ['2022-01-01', '2022-01-02', '2022-01-03'],
'category': ['A', 'B', 'C']})
# 将df2的category列映射到df1的date列
mapping = dict(zip(df2['date'], df2['category']))
df1['category'] = df1['date'].map(mapping)
print(df1)
输出结果为:
date value category
0 2022-01-01 1 A
1 2022-01-02 2 B
2 2022-01-03 3 C
在这个示例中,我们创建了两个dataframe df1
和df2
,它们都有一个共同的列date
。我们想要将df2
的category
列映射到df1
的date
列上。首先,我们使用zip()
函数将df2
的date
列和category
列打包成一个字典。然后,我们使用map()
函数将这个字典应用到df1
的date
列上,将df2
的category
值映射到df1
的category
列上。
这是一个简单的示例,展示了如何在pandas中映射不同dataframe基于datetime的列。根据具体的需求,你可以根据实际情况进行适当的调整和扩展。
领取专属 10元无门槛券
手把手带您无忧上云