数据框中的列似乎不存在

时间:2019-04-19 21:21:45

标签: python pandas pycharm

我有一个数据框,当我尝试将其与另一个合并时给了我一些问题。我在其中一列上不断遇到键盘错误,因此我猜这列会以某种方式下降。

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的新手,所以不知道为什么会这样。

1 个答案:

答案 0 :(得分: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']