在pandas中,我正在尝试找出如何根据相同的键分组行,并在一行中包含一个组中具有公共特征集合(按id分组),一组不同的特征。
类似于下面这个例子:
id C1 C2 Uk U1 0 x 1 2 3 4 1 y 5 6 7 8 2 x 1 2 9 10 3 y 5 6 3 11
这里的公共特征集合是'C1'和'C2',不同的特征集合是'Uk'和'U1',以'Uk'作为分组的键。
对于此示例,期望的结果是:
id C1 C2 Uk3_U1 Uk7_U1 Uk9_U1 0 x 1 2 4 NaN 10.0 1 y 5 6 11 8.0 NaN
当然,也可以有'U2'列,但由于结果的列数会更多,所以这样做会使示例变得更加复杂。
生成该数据集的代码如下:
谢谢。
类似于下面这个例子:
id C1 C2 Uk U1 0 x 1 2 3 4 1 y 5 6 7 8 2 x 1 2 9 10 3 y 5 6 3 11
这里的公共特征集合是'C1'和'C2',不同的特征集合是'Uk'和'U1',以'Uk'作为分组的键。
对于此示例,期望的结果是:
id C1 C2 Uk3_U1 Uk7_U1 Uk9_U1 0 x 1 2 4 NaN 10.0 1 y 5 6 11 8.0 NaN
当然,也可以有'U2'列,但由于结果的列数会更多,所以这样做会使示例变得更加复杂。
生成该数据集的代码如下:
pd.DataFrame({'id': ['x', 'y', 'x', 'y'],
'C1': [1, 5, 1, 5], 'C2': [2, 6, 2, 6],
'Uk': [3, 7, 9, 3], 'U1': [4, 8, 10, 11]})
谢谢。
.reset_index()
。 - Karn KumarU1
,还有U2
,...,U100
,我该如何扩展它? - Nicolas Scotto Di Perto