Spsj.csv是一个从互联网上爬取的1265条商品消费信息数据集,包含商品 分类、店铺名称、点评数量、被评星级、人均消费、店铺地址、口味、环境、 服务共九项数据内容,如下图所示: 请使用pandas读入该数据集,对其中数据先进行清洗、变换等预处理,然 后再进行下列的数据分析。 (1) 分别统计出商品消费类别数及每类中店铺的数量。 (2) 分别统计输出休闲娱乐、美食、购物三类中最大点评数量值及最多人 均消费值,并输出三类中最大点评数量的三家店铺名称。 (3) 分别统计并输出美食类中人均消费最多的前10家店铺数据和人均消费 最少的前10家数据。 (4) 统计并输出“邯郸路”附近口味最好的前10家店铺信息 (5) 统计并输出“购物”类服务在9.0以上,环境最好的前10家店铺信 息。 (6) 统计并输出休闲娱乐类中店铺里集中的前五个区域。
时间: 2024-03-11 08:51:35 浏览: 195
很抱歉,作为一名语言模型,我无法执行数据处理和分析的任务。但你可以使用Python中的pandas和其他数据处理工具来完成这些任务。以下是一些可能有用的代码片段:
1. 读取CSV文件
```python
import pandas as pd
df = pd.read_csv("Spsj.csv", encoding="utf-8")
```
2. 清洗、变换数据
```python
# 去掉空格和换行符
df = df.apply(lambda x: x.str.strip() if x.dtype == "object" else x)
# 将人均消费列转换为浮点型
df["人均消费"] = df["人均消费"].astype(float)
# 将点评数量列转换为整型
df["点评数量"] = df["点评数量"].astype(int)
# 将被评星级列转换为浮点型
df["被评星级"] = df["被评星级"].astype(float)
```
3. 统计商品消费类别数及每类中店铺的数量
```python
category_count = df.groupby("商品分类")["店铺名称"].nunique()
print(category_count)
```
4. 统计休闲娱乐、美食、购物三类中最大点评数量值及最多人均消费值,并输出三类中最大点评数量的三家店铺名称
```python
# 统计休闲娱乐类中最大点评数量值
max_reviews_leisure = df[df["商品分类"] == "休闲娱乐"]["点评数量"].max()
print("休闲娱乐类中最大点评数量值:", max_reviews_leisure)
# 统计美食类中最大点评数量值
max_reviews_food = df[df["商品分类"] == "美食"]["点评数量"].max()
print("美食类中最大点评数量值:", max_reviews_food)
# 统计购物类中最大点评数量值
max_reviews_shopping = df[df["商品分类"] == "购物"]["点评数量"].max()
print("购物类中最大点评数量值:", max_reviews_shopping)
# 统计休闲娱乐类中最多人均消费值
max_cost_leisure = df[df["商品分类"] == "休闲娱乐"]["人均消费"].max()
print("休闲娱乐类中最多人均消费值:", max_cost_leisure)
# 统计美食类中最多人均消费值
max_cost_food = df[df["商品分类"] == "美食"]["人均消费"].max()
print("美食类中最多人均消费值:", max_cost_food)
# 统计购物类中最多人均消费值
max_cost_shopping = df[df["商品分类"] == "购物"]["人均消费"].max()
print("购物类中最多人均消费值:", max_cost_shopping)
# 统计休闲娱乐类中最大点评数量的三家店铺名称
top3_leisure = df[df["商品分类"] == "休闲娱乐"].nlargest(3, "点评数量")["店铺名称"].tolist()
print("休闲娱乐类中最大点评数量的三家店铺名称:", top3_leisure)
# 统计美食类中最大点评数量的三家店铺名称
top3_food = df[df["商品分类"] == "美食"].nlargest(3, "点评数量")["店铺名称"].tolist()
print("美食类中最大点评数量的三家店铺名称:", top3_food)
# 统计购物类中最大点评数量的三家店铺名称
top3_shopping = df[df["商品分类"] == "购物"].nlargest(3, "点评数量")["店铺名称"].tolist()
print("购物类中最大点评数量的三家店铺名称:", top3_shopping)
```
5. 统计并输出美食类中人均消费最多的前10家店铺数据和人均消费最少的前10家数据
```python
# 统计美食类中人均消费最多的前10家店铺数据
top10_max_cost_food = df[df["商品分类"] == "美食"].nlargest(10, "人均消费")
print("美食类中人均消费最多的前10家店铺数据:\n", top10_max_cost_food)
# 统计美食类中人均消费最少的前10家数据
top10_min_cost_food = df[df["商品分类"] == "美食"].nsmallest(10, "人均消费")
print("美食类中人均消费最少的前10家店铺数据:\n", top10_min_cost_food)
```
6. 统计并输出“邯郸路”附近口味最好的前10家店铺信息
```python
# 筛选出地址包含“邯郸路”的店铺
hd_df = df[df["店铺地址"].str.contains("邯郸路")]
# 统计口味得分最高的前10家店铺信息
top10_best_taste = hd_df.nlargest(10, "口味")
print("邯郸路附近口味最好的前10家店铺信息:\n", top10_best_taste)
```
7. 统计并输出“购物”类服务在9.0以上,环境最好的前10家店铺信息
```python
# 筛选出服务得分在9.0以上的购物类店铺
shopping_df = df[(df["商品分类"] == "购物") & (df["服务"] >= 9.0)]
# 统计环境得分最高的前10家店铺信息
top10_best_env = shopping_df.nlargest(10, "环境")
print("购物类服务在9.0以上,环境最好的前10家店铺信息:\n", top10_best_env)
```
8. 统计并输出休闲娱乐类中店铺里集中的前五个区域
```python
# 统计休闲娱乐类店铺地址中地区的数量
leisure_area_count = df[df["商品分类"] == "休闲娱乐"]["店铺地址"].str.extract(r"(.+区)").value_counts()
# 输出前五个区域
top5_areas = leisure_area_count.head(5)
print("休闲娱乐类中店铺里集中的前五个区域:\n", top5_areas)
```
阅读全文