数据框中的列似乎不存在

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

我有一个数据框,当我尝试将它与另一个合并时,它会给我带来问题。我一直在其中一个列上得到一个关键错误,所以我的猜测是这个专栏不知何故正在下降。

print(DF.head())
print(DF.columns.values)

返回的第一部分是预期的:

                                      Quantity
STORE_NMBR CLASS             TYPE             
6          EQUIPMENT         3414001        22
                             3418560        10
                             3463731         1
                             3480019       980
                             3483920         1

第二个不是:

['Quantity']

我几乎是python中的新手,所以不知道为什么会发生这种情况。

python pandas pycharm
1个回答
1
投票

看起来你的数据框中有一个MultiIndex。您可以通过设置DF=DF.reset_index()来修复

例如,

df = pd.DataFrame({'STORE_NMBR':[6]*5, 'CLASS':['EQUIPMENT']*5, 
               'TYPE': [3414001,3418560,3463731,3480019,3483920], 
               'Quantity':[22,10,1,980,1]})

df = df.set_index(['STORE_NMBR', 'CLASS', 'TYPE'])

                                      Quantity
STORE_NMBR CLASS             TYPE             
6          EQUIPMENT         3414001        22
                             3418560        10
                             3463731         1
                             3480019       980
                             3483920         1   

df = df.reset_index()

    STORE_NMBR    CLASS        TYPE     Quantity
0         6     EQUIPMENT   3414001     22
1         6     EQUIPMENT   3418560     10
2         6     EQUIPMENT   3463731     1
3         6     EQUIPMENT   3480019     980
4         6     EQUIPMENT   3483920     1

print(df.columns)

### Outputs
['STORE_NMBR', 'CLASS', 'TYPE', 'Quantity']
© www.soinside.com 2019 - 2024. All rights reserved.