运行时出现错误:KeyError: Index(['subwayline'], dtype='object')

我知道是那个subwayline那里的问题,但是我不知道如何解决。完整代码如下:

#-*- coding:utf-8 -*-
import pandas as pd
from matplotlib import pyplot as plt

分析全国哪个城市地铁线最多

def subline_count():
df1 = df.iloc[:, :-1] # 筛选前三列
# print(df1.head())
df2 = df1.drop_duplicates(subset=["city", "subwayline"]) # 去重
df3 = df2["city"].value_counts() # 按照城市排序
df3.plot.bar()
plt.savefig("城市地铁线数量排行.png")
plt.show()
# print(df3)

分析全国哪个城市地铁站最多

def substation_count():
df2 = df.drop_duplicates(subset=["city", "subwaystation"]) # 去重
df3 = df2["city"].value_counts() # 按照城市排序
df3.plot.bar()
plt.savefig("城市地铁站数量排行.png")
plt.show()

if name == '__main__':
df = pd.read_csv("subway.csv", encoding="utf-8")
plt.rcParams["font.sans-serif"] = "fangsong"
# print(df.head())
subline_count()
substation_count()

把subwayline那一列的数据类型改一下。

df1['subwayline']=df1['subwayline'].astype(str)