一、一维数组
1.1 一维数据可以由numpy中的Array函数或者Pandas包中的Series函数创建,series函数是建立在array函数基础上,功能更加强大一些。
1.2Array 函数
利用numpy包中的array函数定义一维数组。
该一维数组可以利用位置索引进行进行元素查询。
该一维数组可以利用切片进行元素访问。
该一维数组可以利用for循环进行元素访问。
该一维数组可以利用dtype查看数据类型。
该数组可进行统计计算。
该数组采用向量化方式计算
3 Series 函数
Series构建的一维数组与numpy中array构建的一维数组不同的地方在于前者中有索引键,类似于Python中的字典类型。
该类型一维数组可以利用iloc函数利用位置查询元素值,也可以利用loc函数利用索引值查询元素信息。
该类型一维数组采用向量化运算,如果两个数组的索引不对应,则返回空值。
利用dropna( )函数可以删除一维数组中的缺失值
利用add函()函数将两个一维数组相加是可以利用fill_value参数对缺失值进行赋值。
二、二维数据分析
利用numpy中的array()函数和pandas包中的dataframe()函数构建二维数组
2.1 array()函数
Array()函数构建二维数组,同一维数组差不多,同样可以利用位置进行索引,如果选取整行或整列,可只用冒号(:)即可
Array( )二维数组中增加了数轴参数,利用数轴参数可以方便地对每行或每列进行计算,axis = 0,按列进行计算,axis = 1 按行进行计算。
2.2 dataframe()函数
利用pandas包中的dataframe()函数定义二维数组,首先定义一个字典,然后将字典传入dataframe的参数中
利用mean函数可以计算没列的平均值
可以利用iloc函数利用位置查询元素值
可以利用loc函数利用索引查询元素值
三、 朝阳区医院药品销售分析案例
3.1 数据分析的基本步骤
3.2 提出问题
为了更好的评估朝阳区医院的药品的销售情况,现对朝阳区医院的药品销售情况进行数据分析,希望得出月均消费次数,月均消费金额和客单价等三个指标。
月均消费次数 = 总消费次数 / 月份数
其中,同一天内,同一个人发生的所有消费算作一次消费。
月均消费金额 = 总消费金额 / 月份数
客单价 = 总消费金额 / 总消费次数
3.3 理解数据
理解数据首先要了解数据集的结构,数据类型,数据集大小,记录多少及有多少变量等信息。
利用head( )函数可以查看数据集的前五行
利用shape函数可以查看数据集的记录数和变量个数
利用dtype函数可以查看数据集的数据类型
3.3 数据清洗
3.3.1 数据清洗的一般步骤
3.3.2 选择子集
利用loc函数可以选择数据集的子集。本案例不需要选择子集。
3.3.3 列名重命名
利用rename函数可以对列名进行重命名。Rename函数中参数inplace如果等于True则数据框中新列明替换原列名,如果等于False则原数据框不变,而重新创建一个新的数据框。
3.3.4 缺失数据处理
利用dropna函数可以将缺失值进行删除。参数subset用于指定要删除有缺失值得列,参数how=’any’指在给定的任何一列中有缺失值就删除
3.3.5 数据类型转换
利用astype函数可以将一种数据类型转换为另外一种数据类型。利用to_datetime函数可以将字符串转换为日期类型。
3.3..6 数据排序
利用sort_values函数可以将数据进行排序,其中ascending参数为True则升序排序,为False则降序排序。
3.3.7 异常值处理
可以利用条件判断筛选出所要的数据,利用loc函数利用结合条件语句筛选得出的行号
3.4 构建模型
3.4.1 构建月均消费次数模型
每人每天中发生的所有消费算作一次消费,一次注意数据中要进行去重。
利用drop_duplicates()函数删除重复数据。
月均消费次数 = 总消费次数 / 月份数
3.4.2 构建月均消费金额模型
月均消费金额 = 总消费金额 / 月份数
3.4.3 构建客单价模型
客单价 = 总消费金额 / 总消费次数