时间值00:00.0和30:00.0并且它在时间值前面缺少12?

时间:2017-12-13 00:54:54

标签: python pandas

这是我的代码,但我收到错误消息:

  

DateParseError:小时必须在0..23。

如何在代码中显示分钟?

Interval     kWh/hh
30:00.0      1.053
00:00.0      0.862
30:00.0      1.637
00:00.0      2.052

#convert time to just minutes
time_strs = ['30:00.0', '00:00.0']
pis = pd.PeriodIndex(time_strs, freq='M')

2 个答案:

答案 0 :(得分:0)

您可以添加小时数(这将是零)。您还使用'M'作为频率,但'M'表示月 - 您需要使用'T'(或'分钟')。

time_strs = ['00:30:00.0','00:00:00.0']
pis = pd.PeriodIndex(time_strs, freq='minute')

我不太确定你想要做什么,但希望这有助于解决你当前的问题!

答案 1 :(得分:0)

不完全确定您要尝试做什么,但如果您想将Interval列中的时间转换为分钟,我会这样做。我假设它的H:M.S。

def to_minutes(x):
    x = [int(y) for y in x]
    minutes = x[0]*60 + x[1] + x[2]/60
    return minutes

df['Interval_Minutes'] = df['Interval'].str.split(r'[:.]').apply(to_minutes)