pandas餐饮

该博客介绍了使用pandas对餐饮数据的处理,包括删除和填充缺失值,新增字段,以及进行描述统计、分组聚合、数据透视等分析。通过数据可视化展示了各行政区的门店数量、类别服务评分均值、环境和口味评分的箱线图,以及甜点类别的门店数量和人均消费均值的分布。最后,进行了类别和行政区维度的深入分析,得出相关结论。
摘要由CSDN通过智能技术生成

# %%

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

import seaborn as sns

from pyecharts import options as opts

from pyecharts.charts import Pie

from pyecharts.charts import Map

from pyecharts.charts import *

# %%

plt.rcParams['font.sans-serif'] = 'SimHei'

plt.rcParams['axes.unicode_minus'] = False

%matplotlib inline

# %% [markdown]

# ## 导入数据

# %%

# 1.导入餐饮数据,表命名为“df”

df = pd.read_csv('./餐饮数据.csv', encoding='utf-8')

# %%

# 2.预览前10行

df.head(10)

# %%

# 3.查看df的基本信息(列名、非空行数、数据类型、内存大小等)

df.info()

# %% [markdown]

# ## 数据处理

# %% [markdown]

# ### 删除空值

# %%

# 4.删除“人均消费”为空的行

df.dropna(subset=['人均消费'], how='any', inplace=True)

# %%

# 5.删除“点评数”、“口味”、“环境”、“服务”均为空的行

df.dropna(subset=['点评数', '口味', '环境', '服务'], how='all', inplace=True)

# %%

# 6.查看各列是否存在空值

df.isnull().any()

# %%


 

# %% [markdown]

# ### 填充空值

# %%

# 7.填补“类别”为空的数据,填补方式:频数最高的“类别”

df['类别'].fillna(value=df['类别'].value_counts().idxmax(), inplace=True)

# %%

# 8.填补“行政区”为空的数据,填补方式:向前填充

df['行政区'].fillna(method='ffill', inplace=True)

# %%

# 9.填补“点评数”为空的数据,填补方式:向后填充

df['点评数'].fillna(method='bfill', inplace=True)

# %%

# 10.填补“口味”为空的数据,填补方式:众数

df['口味'].fillna(value=df['口味'].mode()[0], inplace=True)

# %%

# 11.填补“环境”为空的数据,填补方式:均值

df['环境'].fillna(value=df['环境'].mean(), inplace=True)

# %%

# 12.填补“服务”为空的数据,填补方式:中位数

df['服务'].fillna(value=df['服务'].median(), inplace=True)

# %% [markdown]

# ### 新增字段

# %%

# 13.新增字段“性价比”,性价比 = (口味 + 环境 + 服务) / 人均消费

df['性价比'] = (df['口味']+df['环境']+df['服务']) / df['人均消费']

df.head()

# %%

# 14.新增字段“综合评分”,综合评分 = (口味 + 环境 + 服务) / 3

df['综合评分'] = (df['口味']+df['环境']+df['服务']) / 3

df.head()

# %%

# 15.新增字段“评价类型”,cut函数

# “综合评分”:(0, 6]为差评,(6, 8]为一般,(8, 10]为好评

df['评价类型'] = pd.cut(x=df['综合评分'], right=True, bins=[0, 6, 8, 10], labels=['差评', '一般', '好评

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值