我有一个 Dataframe ,看起来像这样:
id Field_name Field_value
1 consent yes
1 _REACTION TIME_ 5547
1 age 24
1 gender X
1 _REACTION TIME_ 45396
1 education uni
1 language EN
1 _REACTION TIME_ 105187
2 consent yes
2 _REACTION TIME_ 3547
2 age 25
2 gender F
2 _REACTION TIME_ 42396
2 education uni
2 language EU
2 _REACTION TIME_ 115427
我希望每个ID对应一行,每个_REACTION TIME_
行对应一个不同的列,例如:
id consent _REACTION TIME_1 age gender _REACTION TIME_2 education language _REACTION TIME_3
1 yes 5547 24 X 45396 uni EN 105187
2 yes 3547 25 F 42396 uni EU 115427
我一直在寻找这个问题的答案,但我找不到这个特定的问题时,只有一些条目是重复的,但他们是重复多次。
先谢了!
2条答案
按热度按时间xvw2m8pv1#
GroupBy.cumcount
仅用于与DataFrame.duplicated
重复的行,因此可能按DataFrame.pivot
进行透视,最后为原始列顺序添加DataFrame.reindex
:避免覆盖原始DataFrame的解决方案类似:
41zrol4v2#
如果希望保留
_REACTION TIME_
,而不是在列标题中将其重命名为_REACTION TIME_1
,可以执行groupby.apply