在列 Pandas 中查找最大值
Find Maximum Value in Column Pandas
我有一个这样的数据框 - 机器振动数据。
datetime
tagid
value
quality
0
2021-03-01 13:43:41.440
B42
345
192
1
2021-03-01 13:43:41.440
B43
958
192
2
2021-03-01 13:43:41.440
B44
993
192
3
2021-03-01 13:43:41.440
B45
1224
192
4
2021-03-01 13:43:43.527
B188
6665
192
5
2021-03-01 13:43:43.527
B189
7162
192
6
2021-03-01 13:43:43.527
B190
7193
192
7
2021-03-01 13:43:43.747
C29
2975
192
8
2021-03-01 13:43:43.747
C30
4445
192
9
2021-03-01 13:43:43.747
C31
4015
192
我想将其转换为每个标签 ID 的每小时最大值。
示例输出
datetime
tagid
value
quality
01-03-2021 13:00
C91
3982
192
01-03-2021 14:00
C91
3972
192
01-03-2021 13:00
C92
9000
192
01-03-2021 14:00
C92
9972
192
01-03-2021 13:00
B42
396
192
01-03-2021 14:00
B42
370
192
01-03-2021 15:00
B42
370
192
我尝试使用石斑鱼,但无法获得输出。
将 Grouper
与聚合一起使用 max
:
df = df.groupby([pd.Grouper(freq='H', key='datetime'), 'tagid']).max().reset_index()
我有一个这样的数据框 - 机器振动数据。
datetime | tagid | value | quality | |
---|---|---|---|---|
0 | 2021-03-01 13:43:41.440 | B42 | 345 | 192 |
1 | 2021-03-01 13:43:41.440 | B43 | 958 | 192 |
2 | 2021-03-01 13:43:41.440 | B44 | 993 | 192 |
3 | 2021-03-01 13:43:41.440 | B45 | 1224 | 192 |
4 | 2021-03-01 13:43:43.527 | B188 | 6665 | 192 |
5 | 2021-03-01 13:43:43.527 | B189 | 7162 | 192 |
6 | 2021-03-01 13:43:43.527 | B190 | 7193 | 192 |
7 | 2021-03-01 13:43:43.747 | C29 | 2975 | 192 |
8 | 2021-03-01 13:43:43.747 | C30 | 4445 | 192 |
9 | 2021-03-01 13:43:43.747 | C31 | 4015 | 192 |
我想将其转换为每个标签 ID 的每小时最大值。
示例输出
datetime | tagid | value | quality |
---|---|---|---|
01-03-2021 13:00 | C91 | 3982 | 192 |
01-03-2021 14:00 | C91 | 3972 | 192 |
01-03-2021 13:00 | C92 | 9000 | 192 |
01-03-2021 14:00 | C92 | 9972 | 192 |
01-03-2021 13:00 | B42 | 396 | 192 |
01-03-2021 14:00 | B42 | 370 | 192 |
01-03-2021 15:00 | B42 | 370 | 192 |
我尝试使用石斑鱼,但无法获得输出。
将 Grouper
与聚合一起使用 max
:
df = df.groupby([pd.Grouper(freq='H', key='datetime'), 'tagid']).max().reset_index()