我必须关注数据框:
value time
1 177.059998 2022-05-13
还有这个数字数组:
[[192.62466]
[189.60422]
[186.8717 ]
[191.22443]]
我想用这个 values 和转发 date values 在数据框中创建新行,如下所示:
value time
1 177.059998 2022-05-13
2 192.62466 2022-05-14
3 189.60422 2022-05-15
4 186.8717 2022-05-16
5 191.22443 2022-05-17
回答1
您可以使用:
# Assuming 'time' column is a DatetimeIndex
df['time'] = pd.to_datetime(df['time'])
df1 = pd.DataFrame({'value': np.array(m).flatten(),
'time': pd.date_range(df['time'].max(), periods=len(m)+1,
freq='D', inclusive='right')})
out = pd.concat([df, df1], ignore_index=True)
输出:
>>> out
value time
0 177.059998 2022-05-13
1 192.624660 2022-05-14
2 189.604220 2022-05-15
3 186.871700 2022-05-16
4 191.224430 2022-05-17
回答2
import pandas as pd
data = {'Value': [1,2,3,4,5]}
data=pd.DataFrame(data=data)
data1=pd.date_range(start='2022-05-13',end='2022-05-17',name='date')
data1=pd.DataFrame(data=data1)
pd.concat([data,data1], axis=1)
结果
Value date
0 1 2022-05-13
1 2 2022-05-14
2 3 2022-05-15
3 4 2022-05-16
4 5 2022-05-17