Python 3.x 基于表中的计数器值选择序列数据
我正试图解决一个问题,它涉及一系列数据(类似于时间序列,但实际上更多的是事件序列)、发生的事件类型以及根据外部操作重置为零的计数器(参见原始数据)。我希望能够提取出每次计数器重置为零(包括第一个计数器=0行)之间的类型数据,这不会定期发生(想要的结果)。有没有一种简单的方法可以在熊猫身上做到这一点目标是在计数器重置时,在两个实例之间获得类型的一些计数(和其他分析) 我所拥有的: [![原始数据][1][1] 我想要的是,一个多索引,或者可能只是另一个列,其中包含不同序列的唯一标签,这样会更干净: [![通缉数据][2][2] 编辑:添加数据的文本:Python 3.x 基于表中的计数器值选择序列数据,python-3.x,pandas,dataframe,jupyter-notebook,sequence,Python 3.x,Pandas,Dataframe,Jupyter Notebook,Sequence,我正试图解决一个问题,它涉及一系列数据(类似于时间序列,但实际上更多的是事件序列)、发生的事件类型以及根据外部操作重置为零的计数器(参见原始数据)。我希望能够提取出每次计数器重置为零(包括第一个计数器=0行)之间的类型数据,这不会定期发生(想要的结果)。有没有一种简单的方法可以在熊猫身上做到这一点目标是在计数器重置时,在两个实例之间获得类型的一些计数(和其他分析) 我所拥有的: [![原始数据][1][1] 我想要的是,一个多索引,或者可能只是另一个列,其中包含不同序列的唯一标签,这样会更干净:
[2, 'B', 1],
[3, 'C', 2],
[4, 'D', 3],
[5, 'A', 0],
[6, 'C', 1],
[7, 'B', 2],
[8, 'D', 3],
[9, 'D', 4],
[10, 'A', 5],
[11, 'C', 0],
[12, 'B', 1],
[13, 'A', 2],
[14, 'D', 3],
[15, 'A', 4],
[16, 'C', 5],
[17, 'D', 6],
[18, 'B', 0],
[19, 'A', 1],
[20, 'C', 2],
[21, 'A', 0],
[22, 'D', 1],
[23, 'B', 2],
[24, 'A', 3],
[25, 'C', 4],
[26, 'B', 0],
[27, 'A', 1],
[28, 'A', 2],
[29, 'C', 3],
[30, 'A', 0],
[31, 'B', 1],
[32, 'D', 2],
[33, 'A', 3],
[34, 'C', 0],
[35, 'A', 1],
[36, 'C', 2],
[37, 'C', 3],
[38, 'B', 4],
[39, 'D', 5],
[40, 'A', 6],
[41, 'B', 0],
[42, 'A', 1],
[43, 'D', 2],
[44, 'D', 3],
[45, 'A', 4],
[46, 'C', 5],
[47, 'A', 6],
[48, 'B', 7],
[49, 'C', 0]]```
```Wanted_Data=[[1.0, 'A', 0.0, 5.0, 'A', 0.0, 11.0, 'C', 0.0, 18.0, 'B', 0.0,
21.0, 'A', 0.0, 26.0, 'B', 0.0, 30.0, 'A', 0.0, 34.0, 'C', 0.0,
41, 'B', 0, 49.0, 'C', 0.0],
[2.0, 'B', 1.0, 6.0, 'C', 1.0, 12.0, 'B', 1.0, 19.0, 'A', 1.0,
22.0, 'D', 1.0, 27.0, 'A', 1.0, 31.0, 'B', 1.0, 35.0, 'A', 1.0,
42, 'A', 1, nan, nan, nan],
[3.0, 'C', 2.0, 7.0, 'B', 2.0, 13.0, 'A', 2.0, 20.0, 'C', 2.0,
23.0, 'B', 2.0, 28.0, 'A', 2.0, 32.0, 'D', 2.0, 36.0, 'C', 2.0,
43, 'D', 2, nan, nan, nan],
[4.0, 'D', 3.0, 8.0, 'D', 3.0, 14.0, 'D', 3.0, nan, nan, nan,
24.0, 'A', 3.0, 29.0, 'C', 3.0, 33.0, 'A', 3.0, 37.0, 'C', 3.0,
44, 'D', 3, nan, nan, nan],
[nan, nan, nan, 9.0, 'D', 4.0, 15.0, 'A', 4.0, nan, nan, nan,
25.0, 'C', 4.0, nan, nan, nan, nan, nan, nan, 38.0, 'B', 4.0, 45,
'A', 4, nan, nan, nan],
[nan, nan, nan, 10.0, 'A', 5.0, 16.0, 'C', 5.0, nan, nan, nan,
nan, nan, nan, nan, nan, nan, nan, nan, nan, 39.0, 'D', 5.0, 46,
'C', 5, nan, nan, nan],
[nan, nan, nan, nan, nan, nan, 17.0, 'D', 6.0, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan, nan, nan, 40.0, 'A', 6.0, 47, 'A',
6, nan, nan, nan],
[nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 48, 'B',
7, nan, nan, nan]]```
[1]: https://i.stack.imgur.com/ETy5n.png
[2]: https://i.stack.imgur.com/azSYE.png
IIUC:
输出:
Sequence.1 Type.1 Sequence.2 Type.2 Sequence.3 Type.3 Sequence.4 Type.4 Sequence.5 Type.5
Counter
0 1.0 A 5.0 A 11.0 C 18.0 B 21.0 A
1 2.0 B 6.0 C 12.0 B 19.0 A 22.0 D
2 3.0 C 7.0 B 13.0 A 20.0 C 23.0 B
3 4.0 D 8.0 D 14.0 D NaN NaN 24.0 A
4 NaN NaN 9.0 D 15.0 A NaN NaN 25.0 C
5 NaN NaN 10.0 A 16.0 C NaN NaN NaN NaN
6 NaN NaN NaN NaN 17.0 D NaN NaN NaN NaN
能否将数据粘贴为文本而不是图片?
Sequence.1 Type.1 Sequence.2 Type.2 Sequence.3 Type.3 Sequence.4 Type.4 Sequence.5 Type.5
Counter
0 1.0 A 5.0 A 11.0 C 18.0 B 21.0 A
1 2.0 B 6.0 C 12.0 B 19.0 A 22.0 D
2 3.0 C 7.0 B 13.0 A 20.0 C 23.0 B
3 4.0 D 8.0 D 14.0 D NaN NaN 24.0 A
4 NaN NaN 9.0 D 15.0 A NaN NaN 25.0 C
5 NaN NaN 10.0 A 16.0 C NaN NaN NaN NaN
6 NaN NaN NaN NaN 17.0 D NaN NaN NaN NaN