Python数据分析期中测试--百货商场案例
Posted amcomputer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python数据分析期中测试--百货商场案例相关的知识,希望对你有一定的参考价值。
Python数据分析期中测试–百货商场案例, 使用pandas
1 背景介绍
帮同学写了这个作业,花了2个多小时吧,熟悉的人做应该不到半个个小时就好了吧。主要不熟练pandas库,很多东西都要自己查一下API,也是第一次用Jupyter,这个东西真的恶心人,用Pycharm或者Spyder不好吗?调试也不方便。 反正笔者是没有搞懂Jupyter的好处,估计是对非科班的人吧,看一行run一行, 方便找到结果。写本篇博客的目的是回顾一下pandas的基本用法和数据分析思路,以后遇到同类问题找资料比较方便一点,也算是一个查找字典吧。
2 开始实战
2.1 数据分析期中测试–百货商场案例
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import pandas as pd
import warnings
%matplotlib inline
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
matplotlib.rcParams.update('font.size' : 16)
plt.style.use('ggplot')
warnings.filterwarnings('ignore')
2.2 读取数据
df_cum = pd.read_excel('./cumcm2018c1.xlsx')
2.3 查看数据前10行
df_cum.head()
2.4 数据探索与预处理
df_cum.shape # 查看行数和列数
df_cum.dtypes # 查看行数和列数
2.5 数据信息概况
df_cum.describe # 统计描述信息
2.6 空值判断
dataFrame = df_cum
dataFrame[pd.isnull(dataFrame["会员卡号"])] #判断该列是否空值的,并显示
dataFrame[pd.isnull(dataFrame["出生日期"])] # 34188 行为null
dataFrame[pd.isnull(dataFrame["性别"])] #9435 行为null
dataFrame[pd.isnull(dataFrame["登记时间"])] #12684 为null
2.7 选取空值最多的变量进行空值处理
# "出生日期"列有34188 行为null ,故选择该列
print("处理前",dataFrame.shape)
newDataFrame = dataFrame.dropna(subset = ["出生日期"],how = "any") #直接删除空值
print("处理后",newDataFrame.shape)
2.8 重复值判断
#return1 = dataFrame["会员卡号"].duplicated()
return1 = dataFrame["会员卡号"].value_counts().count() # 计算非重复值个数。 194754
print(194760-return1) #重复值个数 6
return2 = dataFrame["出生日期"].value_counts().count() # 计算非重复值个数。 194754
print(194760-return2) #重复值个数 176736
return3 = dataFrame["性别"].value_counts().count() # 计算非重复值个数。 194754
print(194760-return3) #重复值个数 194758
return4 = dataFrame["登记时间"].value_counts().count() # 计算非重复值个数。 194754
print(194760-return4) #重复值个数 164391
2.9 选取重复值值最多的变量进行重复值处理
# "性别" 列重复数据最多
print(dataFrame.drop_duplicates(["性别"],keep="last")) #去除某一列的重复数据
3统计性分析
3.1 将性别列进行转换,0表示女,1表示男
# 先删除异常值
dataFrame = df_cum
dataFrame["性别"].dropna()
sexDataFrame = dataFrame["性别"].replace([0,1],["女","男"])
3.2 分析男女比例
sexList = list(sexDataFrame)
print("总人数:",len(sexList))
不可见,付费内容....
3.3 将年龄划分为老年(1920-1950)、中年(1960-1990)、青年(1990-2010),绘制一个饼图
付费内容
这里代码就不直接给出了,
资料百度网盘分享:有需要联系qq:2256479514
ps(非诚勿扰):9.9RMB
以上是关于Python数据分析期中测试--百货商场案例的主要内容,如果未能解决你的问题,请参考以下文章
python自动化测试高薪,写给准备转行的朋友:非科班出身,怎么成为测试员!
ArcGIS Pro微课1000例0025:大型商场选择典型案例(缓冲区分析+叠置分析)