Python 熊猫在重采样和取消堆叠后添加列

Python 熊猫在重采样和取消堆叠后添加列,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个包含列的数据帧。axes列始终具有以下值之一:[3,4,5,6,7,8]。我运行一个过滤器,然后更改索引,然后分组,然后重新采样,最后取消数据帧的堆栈,如下面的代码所示 resamp = df[(df.GVW > 100) & (df.AXLES.isin([3,4,5,6,7,8]))].set_index('TIMESTAMP').groupby('AXLES').resample('M', how='count').CLASS dfTemp = resamp.unst

我有一个包含
列的数据帧。
axes
列始终具有以下值之一:
[3,4,5,6,7,8]
。我运行一个过滤器,然后更改索引,然后分组,然后重新采样,最后取消数据帧的堆栈,如下面的代码所示

resamp = df[(df.GVW > 100) & (df.AXLES.isin([3,4,5,6,7,8]))].set_index('TIMESTAMP').groupby('AXLES').resample('M', how='count').CLASS
dfTemp = resamp.unstack(0)
dfTemp.index = [ts.strftime('%b 20%y') for ts in dfTemp.index]
这给了我以下数据帧,这是确定的

AXLES         4   5   6   7  8
Jul 2016    191 1582 212 183 6
然而,问题是:由于我应用了
dfWIM.GVW>100
过滤,所有轴
为3的行都被过滤掉。如何在最终的数据帧中保持此删除的列?我试图按如下方式获取最终数据帧(缺少“3”列,数据帧中添加了“0”值):

如果在所有筛选之后无法保留删除的列,如何将值为0的
[3,4,5,6,7,8]
列(如果缺少)添加到最终数据帧


非常感谢

这只是对问题最后一部分的回答,不是完整的回答:

pythonical查找缺少的列:

missing = list(set([3,4,5,6,7,8]) - set(df.columns.tolist()))
选项1(python):

备选案文2(熊猫):


如果没有看到原始的数据帧,回答起来有点困难,但是如果你过滤掉任何值,我必须使用过滤后的数据准备月度条形图。如果其中一列在某些月份被删除,这会打乱我的绘图功能,我必须确保数据帧大小保持不变。我认为一旦所有的过滤都完成了,我就必须用缺失的列重新填充dataframe。下面的答案是否有帮助?
missing = list(set([3,4,5,6,7,8]) - set(df.columns.tolist()))
for x in missing: df[x] = 0
df = df.append(pd.DataFrame(columns = [missing])).fillna(0)