熊猫数据框中重新取样:如何与以前的“关闭”值填写喃?

问题描述 投票:0回答:1

我从时间序列交易的数据帧创建重采样分钟的数据,并获得列“开放”,“低”,“高”,“关闭”,这是罚款。

dfOHLCV = pd.DataFrame()
dfOHLCV = df.price.resample('T').ohlc()

我的问题就在于填补“南” S。当有一个给定的分钟时间内,没有贸易,价值就变成了“男”。 NaN的可以通过应用填充

.fillna(method='ffill') # which replaces nan by the value in the previous period

然而,在一个小区楠开盘价不应该从该开口,但其前一期的闭合细胞衍生。

例:

index | open | high | low | close
00001 | 3200 | 3250 | 3190| 3240
00002 | nan  | nan  | nan | nan

.fillna将填补

00002 | 3200 | 3250 | 3190| 3240

但我想,以填补这样的:

00002 | 3240 | 3240 | 3240| 3240

换句话说,我想填补楠细胞与前一时期的收盘价。怎么能这样做?

pandas dataframe nan
1个回答
0
投票

检查与fillna dict

df=df.fillna(dict.fromkeys(df.columns.tolist(),df.close.ffill()))
df
         open    high     low   close
index                                
1      3200.0  3250.0  3190.0  3240.0
2      3240.0  3240.0  3240.0  3240.0
© www.soinside.com 2019 - 2024. All rights reserved.