【发布时间】:2022-07-07 13:05:24
【问题描述】:
我有两个 pandas DataFrame df1 和 df2。它们之间的关系是一对多的,在某些情况下可以是一对一的。当关系是一对多时,我想加入具有某些条件的列。我会用一些数据来说明。
import pandas as pd
df1 = pd.DataFrame({
'vid': [1, 2, 3, 4, 5],
'lid': [6, 7, 8, 9, 10],
'v': [3, 5, 6, 1, 9]
})
df2 = pd.DataFrame({
'lid': [6, 6, 8, 8, 10],
'av': ['$10','$5','$4','$3','$2'],
'cr': [0.04, 0.05, 0.03, 0.04, 0.01]
})
对于df2 中存在多个连接的行,即lid 6 和8,我想应用一些函数,比如获取av 和cr 的max。
预期输出:
vid lid v av cr
1 6 3 $10 0.05
2 7 5 np.nan np.nan
3 8 6 $5 0.04
4 9 1 np.nan np.nan
5 10 9 $2 0.01
【问题讨论】: