合并pandas数据框中可变数量的行

2024-07-05 11:00:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我对熊猫和数据帧还不熟悉。我有一个相当简单的问题,我认为应该有一个直接的解决办法,这是我不清楚(我不太了解熊猫)

因此,在我的数据帧中,有许多行具有相同的索引:

                     Glucose   Insulin  Carbs
Hour
2018-05-16 06:43:00    156.0       0.0    0.0
2018-05-16 06:43:00      NaN       0.0   65.0
2018-05-16 06:43:00      NaN       7.0    0.0

我想把它们合并起来,得到一行,它包含了给定时间内所有可用的信息索引:

                     Glucose   Insulin  Carbs
Hour
2018-05-16 06:43:00    156.0       7.0   65.0
2018-05-16 06:43:00      NaN       0.0   65.0
2018-05-16 06:43:00      NaN       7.0    0.0

之后,我将删除任何列中包含NaN的所有行,以获得:

                     Glucose   Insulin  Carbs
Hour
2018-05-16 06:43:00    156.0       7.0   65.0

问题是,在同一个数据框中,我得到了信息较少的重复数据,可能只有碳水化合物或胰岛素

                     Glucose   Insulin  Carbs
Hour
2018-05-19 06:15:00      NaN       1.5    0.0
2018-05-19 06:15:00    229.0       0.0    0.0

我已经知道这些条目的索引:

bad_indices = _df[ _df.Glucosa.isnull() ].index 

我想知道的是,是否有一个很好的Pythonic方法来完成这样的任务(两行和三行的情况都是这样)。 可能是一个内置的方法或者是半标准的方法 或者至少是可读的,因为我不想写得难看(而且容易破碎) 对每种情况都有明确考虑的代码


Tags: 数据方法目的信息df时间情况nan