如何将分钟添加到 Pandas 数据框中的 datetime64 对象
How to add minutes to datetime64 object in a Pandas Dataframe
我想将 datetime64
列的分钟列表添加到新的 df 列中。
我尝试在 for
循环中使用 datetime.timedelta(minutes=x)
。但结果,它向我的所有行添加了一个常量值。我该如何解决?
for x in wait_min:
data['New_datetime'] = data['Date'] + datetime.timedelta(minutes=x)
我希望遍历列表并添加相应的分钟数,但这会向每一行添加 16 分钟的常量值。
以下更改对我有用:
for i, x in enumerate(wait_min):
data['New_Datetime'].iloc[i] = data['Date'].iloc[i] + datetime.timedelta(minutes=x)
可能不是最好的解决方案,但这对我想做的事情很有效。
pandas
对两个 Series
元素求和,如果它们具有相同的长度。您需要做的就是创建 Series
个 timedelta
个对象。
因此,如果 wait_min
是一个长度等于数据帧中行数的分钟列表,则可以这样做:
data['New_datetime'] = data['Date'] + pd.Series([datetime.timedelta(minutes=x) for x in wait_min])
让我们试试
data['Date'] + pd.to_timedelta(wait_min, unit='m')
我想将 datetime64
列的分钟列表添加到新的 df 列中。
我尝试在 for
循环中使用 datetime.timedelta(minutes=x)
。但结果,它向我的所有行添加了一个常量值。我该如何解决?
for x in wait_min:
data['New_datetime'] = data['Date'] + datetime.timedelta(minutes=x)
我希望遍历列表并添加相应的分钟数,但这会向每一行添加 16 分钟的常量值。
以下更改对我有用:
for i, x in enumerate(wait_min):
data['New_Datetime'].iloc[i] = data['Date'].iloc[i] + datetime.timedelta(minutes=x)
可能不是最好的解决方案,但这对我想做的事情很有效。
pandas
对两个 Series
元素求和,如果它们具有相同的长度。您需要做的就是创建 Series
个 timedelta
个对象。
因此,如果 wait_min
是一个长度等于数据帧中行数的分钟列表,则可以这样做:
data['New_datetime'] = data['Date'] + pd.Series([datetime.timedelta(minutes=x) for x in wait_min])
让我们试试
data['Date'] + pd.to_timedelta(wait_min, unit='m')