我正在尝试使用熊猫填充库存数据。我遇到的问题是我的数据框具有多个代码(Dim_Assets.Index)。在某种程度上,我认为需要一个分区。下面的df1是我现在拥有的数据帧。 df2是所需的输出。
import pandas as pd
d1 = {'AssetDate': ['1/1/2020', '1/3/2020', '1/1/2020', '1/3/2020'], 'Dim_Assets.Index': [1,1,2,2],'AssetPrice': [50, 56, 100, 96]}
df1 = pd.DataFrame(data=d1)
df1['AssetDate']=pd.to_datetime(df1['AssetDate'], format='%m/%d/%Y')
d2 = {'AssetDate': ['1/1/2020', '1/2/2020', '1/3/2020', '1/1/2020', '1/2/2020', '1/3/2020'], 'Dim_Assets.Index': [1,1,1,2,2,2],'AssetPrice': [50, 50, 56, 100, 100, 96]}
df2 = pd.DataFrame(data=d2)
df2['AssetDate']=pd.to_datetime(df2['AssetDate'], format='%m/%d/%Y')
如何获得所需的df2?
答案 0 :(得分:0)
回填不会将行添加到数据框中。它是fillna
的别名。因此,如果您想回填某些内容,则需要添加带有日期和空值的行以进行回填。然后,您可以按Dim_Assets.Index分组,并按组回填。
df.gropuby('Dim_Assets.Index').bfill(...)