列未附加到DataFram

2024-04-19 02:02:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将小计添加到我的dataframe:groupby一些索引级别,然后将新的dataframe附加到主dataframe。不知为什么temp["Узел"] = "Итого"什么也不做。它不添加新列,尽管temp["Узел2"] = "Итого"添加了一个。我想,这是因为我的'pvt'数据帧已经有了"Узел"索引级别,但是它对一个新的'temp'数据帧有什么影响呢?你知道吗

temp = pvt.groupby(level=["Принадл"]).sum()
temp["Узел"] = "Итого"
print(temp)
print(temp["Узел"])
        Россия                                                                 \
           ОКТ   КЛГ    МСК    ГОР    СЕВ    СКВ    ЮВС    ПРВ    КБШ     СВР   
Принадл                                                                         
ИП         783    14    172    398    248   1178    460    235    314     644   
ПС       93900  5049  89815  36197  85619  55213  91681  26764  33869  154280   

          ...                                                            \
        СНГ и др.    Итого  

Принадл                     
ИП             46     9342  
ПС          51529  1299784  

[2 rows x 21 columns]

Empty DataFrame
Columns: []
Index: [ИП, ПС]

熊猫0.16.1,小熊猫1.9.2

UPD:这是因为手动添加了多索引级别“Узео”或多级列。。。或者两者兼而有之。我还不确定。 UPD2:当我在添加新列之前临时切换到一级列名时,我能够避免这个问题

columns, temp.columns = temp.columns, [None]*len(temp.columns)
temp[...] = ...
<...>
temp.columns = columns

Tags: columns数据dataframeindex级别leveltempempty