此问题已在此处有答案:
Pandas ---> Need an index for each group element(1个答案)
7天前关闭
当前 Dataframe 已经按A列中的组的顺序排列。C列只是1到n的序列
| 色谱柱A|B栏|色谱柱C|
| --------------|--------------|--------------|
| 第1组|x|1|
| 第1组|y|二|
| 第1组|z|三|
| 第二组|w|1|
| 第二组|x|二|
| 第二组|y|三|
| 第二组|z|四|
我需要为每个组反转列C,以便 Dataframe 看起来像这样:
| 色谱柱A|B栏|色谱柱C|
| --------------|--------------|--------------|
| 第1组|x|三|
| 第1组|y|二|
| 第1组|z|1|
| 第二组|w|四|
| 第二组|x|三|
| 第二组|y|二|
| 第二组|z|1|
我已经尝试将 Dataframe 分组,但我需要从分组的 Dataframe 返回到 Dataframe 。这可以反转C列,但我不确定如何将其返回到 Dataframe ,或者是否有方法在不分组的情况下做到这一点:
df = df.groupby('Column A', sort=False, group_keys=True).apply(lambda row: row['Column C'][::-1])
1条答案
按热度按时间vshtjzan1#
如果需要范围
N
到1
,使用GroupBy.cumcount
和ascending=False)
参数:您的
GroupBy.transform
变更单解决方案: