考虑一个数据框架
Major = Date, Sales Cost, Sales Channel
销售渠道有多种类型。
还有另一个数据框架
Minor = Date, Agent Type, Agent Id
对于给定的日期,将有多个主要列。
但是,只有一列对应于日期的小数。
需要根据日期将两个新列添加到主列中。
这是我尝试过的
Major.join(Minor.set_index('Date'), on='Date')
print(Major.columns) 这不添加新的列到主要,根据那些存在于次要。
为了简化:对于较大数据帧中的所有日期,在日期匹配时,从较小的数据框架中添加新列。
主修
Date Sales Cost Sales Channel
01/12/2020 5000 Alpha
01/12/2020 10000 Alpha
01/13/2020 13000 Beta
01/14/2020 23000 Beta
01/15/2020 24000 Gamma
01/16/2020 1200 Alpha次要
Date Agent Type Agent Id
01/12/2020 Online 1234
01/12/2020 Offline 1233
01/13/2020 Online 1245
01/14/2020 Online 1232
01/15/2020 Offline 1256
01/16/2020 Offline 1234第一次合并
Date Sales Cost Sales Channel Agent Type Agent Id
01/12/2020 5000 Alpha Online 1234
01/12/2020 5000 Alpha Online 1234
01/12/2020 5000 Alpha Offline 1233
01/12/2020 5000 Alpha Offline 1233发布于 2021-08-02 22:45:17
只需合并数据集:
result = Major.merge('Minor', on='Date', how='left')
result.set_index('Date')https://stackoverflow.com/questions/68627887
复制相似问题