python pandas 多级索引获取特定值

问题描述 投票:0回答:1

我有一个每小时分组值的 pandas 数据框

2020.05.05 17:00:00  cpu_usage_specint        4.354603
                     phys_iops             3075.779680
                     total_memory         13843.480000
2020.05.05 18:00:00  cpu_usage_specint        3.670237
                     phys_iops             3403.007340
                                              ...     
2020.05.11 22:00:00  phys_iops            30459.577340
                     total_memory         28851.025000
2020.05.11 23:00:00  cpu_usage_specint        1.903852
                     phys_iops             8161.811320
                     total_memory         28827.575000

the index is a MultiIndex([('2020.05.05 17:00:00', 'cpu_usage_specint'),
            ('2020.05.05 17:00:00',         'phys_iops'),
            ('2020.05.05 17:00:00',      'total_memory'),
            ('2020.05.05 18:00:00', 'cpu_usage_specint'),
            ('2020.05.05 18:00:00',         'phys_iops'),
            ('2020.05.05 18:00:00',      'total_memory'),
            ('2020.05.05 19:00:00', 'cpu_usage_specint'),
            ('2020.05.05 19:00:00',         'phys_iops'),
            ('2020.05.05 19:00:00',      'total_memory'),
            ('2020.05.05 20:00:00', 'cpu_usage_specint'),
            ...
            ('2020.05.11 20:00:00',      'total_memory'),
            ('2020.05.11 21:00:00', 'cpu_usage_specint'),
            ('2020.05.11 21:00:00',         'phys_iops'),
            ('2020.05.11 21:00:00',      'total_memory'),
            ('2020.05.11 22:00:00', 'cpu_usage_specint'),
            ('2020.05.11 22:00:00',         'phys_iops'),
            ('2020.05.11 22:00:00',      'total_memory'),
            ('2020.05.11 23:00:00', 'cpu_usage_specint'),
            ('2020.05.11 23:00:00',         'phys_iops'),
            ('2020.05.11 23:00:00',      'total_memory')],

例如,我想要每个指标每小时的具体值

for date in metrics_pivot_df.index.get_level_values('date').unique():
    print('this is the date',date)

这给了我日期,但我也想要total_memory的值,这样我可以做一些测试,例如> =等,但我不知道如何获取该值?我已经尝试引用“mertic”列,但是当我尝试执行查询时,这会返回 true/false

非常感谢任何帮助

python pandas dataframe multi-index tensorflow-data-validation
1个回答
0
投票

只见树木不见森林

for date in metrics_pivot_df.index.get_level_values('date').unique():
    print('this is a specific date',date, metrics_pivot_df.loc[date, 'cpu_usage_specint'])

解决了

© www.soinside.com 2019 - 2024. All rights reserved.