【发布时间】:2021-05-10 17:34:23
【问题描述】:
假设我有 2 个相同形状的数据框。在每个数据框的第一列中,我有一个产品 ID(变体项目的父项),在以下列中,我有一些数据(预处理的产品特征/编号),这在两个数据框和最后一列中是不同的我有专业产品的变体项目的总量(从子到父产品 ID)
第一个数据帧:
dfaa = pd.DataFrame([['id1', 1, 2, 3, 3], ['id2',4, 5, 6,6 ], ['id3', 7, 8, 9,9]], columns=['prod_id','a', 'b','c','number of prod variants'])
第二个数据帧:
dfbb = pd.DataFrame([['id1', 1.1, 2.2, 3.3, 3], ['id2',4.4, 5.4, 6.6,6 ], ['id3', 7.7, 8.8, 9.9,9]], columns=['prod_id','a', 'b','c','number of prod variants'])
我需要做的是加入这些数据帧以形成一个具有多索引的数据帧,如下所示:
第一个选项是每个特征的额外索引级别,该级别由较低级别的两列组成,用于来自 2 个原始数据帧的两个值。我能想到的第二个选项就是沿列连接特征,然后添加一个额外的索引级别来描述数字(非 NaN 值和唯一值)。
对于第一个选项,可能需要修改较低索引级别的列的名称(例如,我可以使用 a_vals 和 a_unique 代替 a 和 a) - 这没问题。
非常努力地在 python 中处理数据,非常感谢您的帮助。
【问题讨论】:
-
感谢您的提示,我刚刚编辑了代码。但对不起其余的:我没有在任何地方提到合并^^
-
我需要做的是加入这些数据帧
join和merge本质上是一回事。
标签: python pandas dataframe multi-index