【发布时间】:2018-04-21 20:24:01
【问题描述】:
我有一个大型面板数据框,其中包含多个日期的多个资产。问题是某些资产并非每天都有值,因此我希望将当天的任何空白值替换为该资产的最后一个可用值。
例如:
tradeDate assetId ticker Sedol price
0 2016-01-04 00:00:00.000 1786 3900 B17N9P6 1
1 2016-01-04 00:00:00.000 2041 1898 B1JNK84 2
2 2016-01-04 00:00:00.000 2981 CBMG B9F9PM1 3
3 2016-01-04 00:00:00.000 3547 MWA B15RZR4 4
4 2016-01-04 00:00:00.000 3570 TPLM B065Y40 5
5 2016-01-05 00:00:00.000 3995 MHGC B0YRYS2 1
6 2016-01-05 00:00:00.000 4110 DSW B0BV2V6 2
7 2016-01-05 00:00:00.000 4874 NWE B03PGL4 3
8 2016-01-05 00:00:00.000 4982 BOFI B0637D4 4
9 2016-01-05 00:00:00.000 5082 ISCTR B03MYS8 5
10 2016-01-05 00:00:00.000 5083 KCHOL B03MVJ8 6
所以我需要对 tradeDate 和assetIds 编制索引,然后重新编制索引,以便为每个交易日期创建新行,以便始终有相同数量的assetIds。这将创建带有 NaN 的行。我对这一步感到困惑,因为我不确定使用多个索引时的语法以及tradeDate 和assetId 列不完全匹配时的语法。
最后,我将不得不用最后一个可用值替换 NaN。但是,我必须再次为tradeDate 和assetId 的两个索引执行此操作。感谢对此的帮助
【问题讨论】:
标签: python pandas dataframe indexing