我有一个满是时间增量的稀疏数组,因为我希望能够将它们转换为小时。
print(times_arr)
array([datetime.timedelta(seconds=28800),
datetime.timedelta(seconds=30600),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=27000),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=30600),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=27000),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=30600),
datetime.timedelta(seconds=27000),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=23400),
datetime.timedelta(seconds=30600),
datetime.timedelta(seconds=28800),
datetime.timedelta(seconds=23400)])
有谁知道如何将此数组转换为小时数组[(8,8.56等
我已经试过了我知道的所有方法。我对Python还是个新手。谢谢
4条答案
按热度按时间mzillmmw1#
转换为
timedelta64[m]
dtype,然后从那里开始:jdzmm42g2#
您可以将每个时间增量中的总秒数除以3600,以获得所需的输出。
xwmevbvl3#
尝尝这个。
daolsyd04#
使用
arr.astype('timedelta64[s]').astype("int64")/3600
而不是arr.astype('timedelta64[m]').astype(int) / 60
,这会导致秒的“丢失”。