Python数据分析~~美食排行榜

目录

1.模块的导入和路径的选择

2.访问前面五行数据

3.按照条件进行筛选

4.获取店铺评分里面的最高分

5.打印对应的店铺的名字


1.模块的导入和路径的选择

复制代码
# 导入pandas模块,简称为pd
import pandas as pd
# 使用read_csv()函数
# TODO 读取路径"/Users/feifei/hotpot.csv"的文件,并赋值给变量df
df=pd.read_csv(r"C:\Users\32565\AppData\Local\Temp\ac96d06d-2a12

这个路径一定要选择正确,其实我对于这个路径并不是很理解,所以刚刚刚开始进行测试的时候就遇到了很多的报错,这个路径不是这个csv文件的路径,而是在这个vscode里面打开这个文件之后的路径,在这个文件里面打开的时候,显示的是D盘,但是在vscode上面打开之后,这个路径就成为了C盘,虽然我不知道为什么,但是这个使用C盘的路径才是正确的;

2.访问前面五行数据

(1)这个里面我们是使用的head函数,这个函数可以写参数,也可以不写参数,不写参数就是默认取出来这个文件里面的前面的五行数据,如果想要取出来更多的数据,我们就需要去添加这个对应的参数;

复制代码
# TODO 使用head()函数,访问df第1行到第5行的数据,并赋值给变量top_5
top_5=df.head()
# TODO 输出前5行数据
print(top_5)

3.按照条件进行筛选

(1)这个背景开始的时候没有进行介绍,实际上这个文件里面是一些美食店铺的排行榜,我们要查找的就是这个鱼店的,因此我们要冲这个里面把不是鱼店的店铺剔除掉,因为这个里面的美食,除了鱼类,肯定还有其他的类型啊,str.contains就是把这个参数放进去,表示我们只想要选择带"鱼"字的店铺名字,这个相当于就缩小了数据的范围;

复制代码
# TODO 使用列索引和str.contains()函数
# 创建判断"店铺名称"列中的数据包含"鱼"的判断条件,并赋值给变量fishpot
fishpot = df[df["店铺名称"].str.contains("鱼")]

# TODO 输出fishpot,查看结果
print(fishpot)

4.获取店铺评分里面的最高分

(1)这个里面是使用的max函数,打印的结果就是这个所有相关的店铺的最高分(带鱼的)

复制代码
import pandas as pd
# 使用read_csv()函数
# 读取路径"/Users/feifei/hotpot.csv"的文件,并赋值给变量df
df = pd.read_csv("/Users/feifei/hotpot.csv")

# 使用列索引和str.contains()函数
# 创建判断"店铺名称"列中的数据包含"鱼"的判断条件,并赋值给变量fishpot
fishpot = df[df["店铺名称"].str.contains("鱼")]

# TODO 获取"口味评分"列的最大值,并赋值给taste
taste = fishpot["口味评分"].max()
# TODO 输出taste
print(taste)

5.打印对应的店铺的名字

(1)我们上面的打印结果是这个店里面的评分的最高分数,我们如果想要得到这个店铺的名字,就需要使用函数set_index设置对应的行索引:

复制代码
# 导入pandas模块,简称为pd
import pandas as pd
# 使用read_csv()函数
# 读取路径"/Users/feifei/hotpot.csv"的文件,并赋值给变量df
df = pd.read_csv("/Users/feifei/hotpot.csv")

# 使用列索引和str.contains()函数
# 创建判断"店铺名称"列中的数据包含"鱼"的判断条件,并赋值给变量fishpot
fishpot = df[df["店铺名称"].str.contains("鱼")]

# 将店铺名称设置为行索引,将新的Dataframe赋值给变量fishpot2
fishpot2 = fishpot.set_index("店铺名称")

# TODO 获取评分最高的行索引,也就是店铺名称
tasteBest = fishpot2["口味评分"].idxmax()

# 输出tasteBest
print(tasteBest)

(2)idmax函数会打印这个评分最高的行索引

6.索引的重置

(1)我们获得这个店铺的名称之后,这个还需要还原为dataframe格式,也就是二维的列表格式,这个时候我们需要使用reset_index()函数进行这个索引的重置;

复制代码
# 导入pandas模块,简称为pd
import pandas as pd
# 使用read_csv()函数
# 读取路径"/Users/feifei/hotpot.csv"的文件,并赋值给变量df
df = pd.read_csv("/Users/feifei/hotpot.csv")

# 使用列索引和str.contains()函数
# 创建判断"店铺名称"列中的数据包含"鱼"的判断条件,并赋值给变量fishpot
fishpot = df[df["店铺名称"].str.contains("鱼")]

# 将店铺名称设置为行索引,将新的Dataframe赋值给变量fishpot2
fishpot2 = fishpot.set_index("店铺名称")

# 获取评分最高的行索引,也就是店铺名称
tasteBest = fishpot2["口味评分"].idxmax()

# TODO 重置索引,还原dataframe
fishpot3 = fishpot2.reset_index()
# 输出fishpot3
print(fishpot3)
相关推荐
老白干2 小时前
jjwt 0.9.1 在 JDK 11+ 上的两个“坑”与完整解决方案
java·python·log4j
笨鸟先飞,勤能补拙8 小时前
AI 赋能网络安全:技术全景、成熟度评估与实战案例
人工智能·python·安全·web安全·网络安全·sqlite·github
长和信泰光伏储能9 小时前
京津冀光伏发电:绿色能源的未来之路
python·能源
浦信仿真大讲堂9 小时前
从重复操作到自动化闭环:如何让 CST 与 Python 真正协同起来
python·自动化·cst·仿真软件·达索软件
Gu Gu Study10 小时前
ScoutLoop开放域深度研究引擎(agent的初步设计想法)
人工智能·python
卷无止境11 小时前
写代码这件事,到底该讲究点什么?
后端·python
卷无止境11 小时前
循环复杂度到底在算什么,Python 代码怎么才能写得让人一看就懂
后端·python
lpfasd12311 小时前
MediaCrawler 项目深度分析
chrome·python·chrome devtools
Dxy123931021611 小时前
Python项目打包成EXE完整教程(PyInstaller实战避坑)
开发语言·python
bamb0012 小时前
一个项目带你入门AI应用开发01
python