gpt4 book ai didi

python - 如何更改索引中的特定日期值?

转载 作者:行者123 更新时间:2023-12-04 07:24:32 25 4
gpt4 key购买 nike

我正在尝试将日期框中的最后一个索引值更改为另一个日期。

from datetime import datetime, timedelta
import pandas as pd
import numpy as np

date_1 = datetime(2021,5,31,0,0)
date_2 = datetime(2021,6,30,0,0)
df=pd.DataFrame(index={date_1,date_2},data = {1,2},columns={'X'})
我还有一个我想要的日期的变量,它的类型是 datetime
last_dt = datetime(2021, 6, 24, 0, 0)
当我尝试加入两者时,我收到一条错误消息“索引不支持可变操作”
df.index[-1]=last_dt
虽然索引也是日期时间类型,但最后一个值 (df.index[-1]) 是时间戳类型。
type(df.index[-1])
pandas._libs.tslibs.timestamps.Timestamp
我猜这种不匹配是导致错误的原因,但不确定如何解决。

最佳答案

pd.Index对象不直接支持项分配,因此一种方法是手动构造新索引并将其分配回来:

# we put the values till last one as is and add `last_dt` at last
df.index = [*df.index[:-1], last_dt]
或者您可以操作底层数组:
df.index.array[-1] = last_dt

关于python - 如何更改索引中的特定日期值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68288216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com