python - Python时间序列数据框在while循环中的每个循环设置一个元素
问题描述
我是 python 的新手,当然我没有最好的代码,但我几乎得到了我想要的,我在最后一英里。我试图在一个暂停为一秒的while循环中填充频率为一秒的时间序列的数据帧,在这个循环内我试图当时设置数据帧元素,而是每次都写入一个元素我写入所有数据框元素。如果我用 np.random.randint(0,100,size=(len(rng)) 进行测试,我不明白它可以正常工作,但是当我插入 np 我的变量时,它会用最后一个填充所有数据框数据
import datetime
import pandas as pd
import numpy as np
today=datetime.today()
rng=pd.period_range(today,periods=1000,freq='S')
rng=rng.astype('datetime64[ns]')
df = pd.DataFrame(rng, columns=['date'])
df['datetime'] = pd.to_datetime(df['date'])
df= df.set_index('datetime')
df.drop(['date'], axis=1, inplace=True)
x=0
while True:
try:
df['data'] = np.random.randint(0,100,size=(len(rng))
# if instead of np i put my variable data it will fill all the data frame with the last data
print(x)
print(df.head(x))
time.sleep(1)
except KeyboardInterrupt:
break
解决方案
我找到了这个解决方案:在while循环之前,我在循环中添加了 df['data']=np.nan e 我用这个 df.iloc[x]='my series variable' 和 x+= 用随机数更改了行1. 简而言之,我创建了一个数据框元素迭代。不知道有没有更好的办法
推荐阅读
- r - 从两个netcdf创建新的netcdf,平均温度作为变量,最大和最小温度作为R中的变量
- c - 如何使用位于结构中的函数指针运行函数?(C)
- r - 如何从 r 中的数据框中删除标题行?
- python - 使用 python 可执行文件从 Windows 命令行运行 .py 文件时出现 Numpy 导入错误
- android - 无论我尝试什么,都无法让 ViewModel 上的 SavedState 正常工作
- amazon-web-services - 使用 DNS 来自终端的 SSH beanstalk
- javascript - 无法使用 axios 从反应视图发送多部分/表单数据
- reactjs - 无法使用 useState()
- wordpress - WordPress 添加
如果我不在循环中使用 wp_reset_postdata()和标签。为什么? - .net-5 - EF Core 5 两个日期时间之间的总和差异