如何使用python和pandas输出每个类别中的餐馆数量?我有一家餐馆和一家名为“类别”的数据库,其中包含“餐厅”,例如(意大利语,中文...)。
我想将最受欢迎的餐厅到最少的餐厅数排在前10位。
数据存储在csv文件的变量“文件名”中。
我的方法:
def myrest(filename, city):
restaurants = filename[filename['categories'].str.contains('Restaurants')]
restaurants.loc[restaurants.categories.str.contains('Italian'), 'category'] = 'Italian'
restaurants.loc[restaurants.categories.str.contains('Japanese'), 'category'] = 'Japanese'
print(restaurants.category[:10])
输出应类似于: 意大利语:350(350表示城市中的意大利餐馆数量), 日语:250, 韩语:140, 土耳其语:77 ....
我只得到餐厅的名称,而不是例如“多伦多”中的餐厅数量。
答案 0 :(得分:0)
如果要计算类别列中的值:
restaurants.categories.value_counts()
# or
restaurants.groupby('categories').count()
您将获得一个餐厅类型的表格及其在列中的次数。