ValueError: Could not interpret input 'State/UnionTerritory'

ValueError: Could not interpret input 'State/UnionTerritory'

我的数据集包含以下数据。 State/UnionTerritory 列包含重复的州名

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 14690 entries, 0 to 14689
Data columns (total 8 columns):
 #   Column                    Non-Null Count  Dtype         
---  ------                    --------------  -----         
 0   Date                      14690 non-null  datetime64[ns]
 1   State/UnionTerritory      14690 non-null  object        
 2   ConfirmedIndianNational   14690 non-null  object        
 3   ConfirmedForeignNational  14690 non-null  object        
 4   Cured                     14690 non-null  int64         
 5   Deaths                    14690 non-null  int64         
 6   Confirmed                 14690 non-null  int64         
 7   Total_active              14690 non-null  int64         
dtypes: datetime64[ns](1), int64(4), object(3)
memory usage: 918.2+ KB

我正在为条形图编写代码,我需要按 'State/UnionTerritory' 对所有数据进行分组,然后我想绘制条形图

data = dataframe[['State/UnionTerritory', 'Confirmed', 'Cured', 'Deaths']]
data.sort_values('Confirmed', ascending = False, inplace = True)
data = data.groupby('State/UnionTerritory')['Confirmed', 'Cured', 'Deaths'].sum().sort_values(by = 
                    'Confirmed', ascending = False)
data

sns.barplot(x = 'Confirmed', y ='State/UnionTerritory', data = data, label = 'Total', color = "r")
sns.set_color_codes("muted")
sns.barplot(x = 'Cured', y = 'State/UnionTerritory', data = data, label = 'Cured', color = "g")

# Add a legend & informative axis lable
ax.legend(ncol = 2, loc = 'lower right', bbox_to_anchor=(1, -0.15), frameon = True)
ax.set(xlim = (0, 35), ylabel = '', xlabel = 'Cases')
sns.despine(left = True, bottom = True)

我按州名分组。这是数据

的输出
State/UnionTerritory   Confirmed    Cured   Deaths
--------------------------------------------------      
Maharashtra            563699160    490137457   13199193
Karnataka              232492536    209887486   3047652
Andhra Pradesh         222339098    209691093   1804369
Tamil Nadu             215959445    202000492   3181512
Kerala                 190487632    170348486   737000

当我对该数据尝试条形图时出现此错误

4 data
5 
----> 6 sns.barplot(x = 'Confirmed', y ='State/UnionTerritory', data = data, label = 'Total', color = 
        "r")
7 sns.set_color_codes("muted")
8 sns.barplot(x = 'Cured', y = 'State/UnionTerritory', data = data, label = 'Cured', color = "g")

ValueError: Could not interpret input 'State/UnionTerritory'

任何人都知道如何解决这个问题。谢谢提前

可能发生的情况是您不再有名为 'State/UnionTerritory' 的列。相反,它现在是您的索引。因此,您可以重置索引/重命名列,或者直接将数据传递给 X 和 Y,而不是像您那样分别传递列名和“数据”。

顺便说一句,我想你可能也想交换你的 x 和 y。

实际上看看 data.columnsdata.reset_index().columns