我想按两列分组,得到它们的累积计数。我试着在组中寻找相关代码,但找不到,但根据我编码的内容得到的提示不多,但最终却出现了错误。这个问题能解决吗?
ID ABC XYZ
1 A .512
2 A .123
3 B .999
4 B .999
5 B .999
6 C .456
7 C .456
8 C .888
9 d .888
10 d .888输出应该是belowEither,ABC或XYZ有新的值计数器应该增加。
ID ABC XYZ GID
1 A .123 1
2 A .512 2
3 B .999 3
4 B .999 3
5 B .999 3
6 C .456 4
7 C .456 4
8 C .888 5
9 d .888 6
10 d .888 6代码如下
DF=DF.sort(['ABC','XYZ'] ,ascending = [1,0])
DF['GID'] = DF.groupby('ABC','XYZ').cumcount()但最终却出现了一个错误:
ValueError:对象类型没有命名为XYZ的轴
发布于 2016-07-18 14:14:34
我得到了这样的预期结果。
c1 = df.ABC != DF.ABC.shift()
c2 = df.XYZ != DF.XYZ.shift()
DF['GID'] = (c1 | c2).cumsum()
DF

https://stackoverflow.com/questions/38438432
复制相似问题