pandas 根据时间戳标准用另一个 Dataframe 值替换一个 Dataframe 值

qncylg1j  于 2022-11-27  发布在  其他
关注(0)|答案(1)|浏览(143)

我是Python的新手,可能对这里的很多人来说这是一个非常基本的问题,所以提前道歉,请耐心等待。我有一个水位记录的时间序列,其中的时间戳是不连续的。我想创建一个新的时间序列,它是连续的,并且对于没有数据的间隔,我想分配nan。我创建了一个连续的时间序列,其中的水位为Nan值。我尝试用df.replace函数迭代填充观察到的值,但是我不能产生我想要的结果。下面是我的代码:
第一个
此代码运行时没有任何错误,但会生成通过代码第一部分创建的Nan时间序列. NaN Dataframe :
第一次

wlzqhblo

wlzqhblo1#

这个答案假设您的输入df df3已经将列重命名为Timestamp,并且dtype转换为datetime。

dti = pd.date_range("2020-05-01", periods=1224, freq="3H")
dti_df = pd.DataFrame(dti, columns=['Timestamp'])
new_df=pd.merge(left=dti_df,right=df3, on='Timestamp',how='left')

new_df.iloc[390:400,:]

    Timestamp           Level
390 2020-06-18 18:00:00 161.287
391 2020-06-18 21:00:00 161.286
392 2020-06-19 00:00:00 NaN
393 2020-06-19 03:00:00 NaN
394 2020-06-19 06:00:00 NaN
395 2020-06-19 09:00:00 NaN
396 2020-06-19 12:00:00 161.283
397 2020-06-19 15:00:00 161.283
398 2020-06-19 18:00:00 NaN
399 2020-06-19 21:00:00 NaN

相关问题