#计算机#
怎么用python分析数据分析
好问题
如何用python进行数据分析?手把手教你使用Python做数据分析?
过期爱人
关注问题
举报
提问日期:2023-06-09 | 浏览次数:744
1人赞同了该回答
  大概的学习流程如下,在用python进行数据分析的时候通常用的两个包是numpy和pandas   一、一维数据分析   在pandas中的一维数据结构Series, 在numpy中的一维数据结构叫array,   panads的series是基于numpy的array,并且功能更多,必须先掌握numpy的array。   1.Numpy一维数组   其实numpy的一维数组的定义和查询和列表是类似的   2.Numpy一维数组与列表的区别   numpy 可以进行向量化运算,属于线性代数运算numpy数组中的元素都必须是同一种数据类型,而列表可以是不同的数据类型 3.panads 一维数据结构   4.获取描述统计信息   5.向量相加   二、二维数据分析   1.用Numpy 定义二维数组   2.查询元素   3.Numpy数轴参数   4. Pandas数据框(DataFrame)   有一个注意点:如果重新打开代码的时候,继续执行未执行完的代码,,可能会报错未导入包,所以在代码的开头重新导入包即可   5.定义有序数据框   6. iloc 属性用于根据位置查询值   7. loc 属性用于根据索引查询值   8.数据框复杂查询:切片功能   9.数据框复杂查询:条件判断   10.数据集描述统计信息   三、数据分析步骤   1.提出问题   ‘’'从销售数据中分析出以下业务指标:   (1) 月均消费次数   (2) 月均消费金额   (3) 客单价   (4)消费趋势 ‘’’   2.理解数据   3.数据清洗步骤   选择子集   列名重命名   缺失数据处理 ‘’'python 中缺失值有三种:   1) python内置的None值   在pandas 中,将缺失值表示为NA, 表示不可用not available   对于数值数据,pandas使用浮点值NAN(Not a number)表示缺失数据   后面出来数据,如果遇到错误:有float错误,就是有缺失值,需要处理掉   所以,缺失值有三种:None NA NaN’‘’   以后遇到缺失值无法删除提供了以下几种解决方法:   方法一:   【问】删除缺失值,发现没有删除掉   【答】按这个修改下格式就可以了   [https://stackoverflow.com/questions/39339935/pandas-dropping-rows-with-missing-data-not-working-using-isnull-notnull](https://link.zhihu.com/?target=   这个方法不是很实用,对于数据少量的情况下可以用   方法二:   【可能原因2】排查了一下确实是那个nan的问题。我数据分析的专用环境是nb,但是起先没切换过去,用了默认的base环境。切换kernal后就正常显示了NaN,并能dropna空值了。   进一步比对了一下两个环境,发现base环境的pandas和xlrd版本更旧一点点,更新之后就也可以正常使用了。   字符串转换为数值(浮点数)   处理日期   在源数据中如何处理日期问题   注意点:有人报错"float object has no attribute split"   是因为有空值,pandas中空值是浮点型,在没有去除空值的情况下,就切割   可能是因为是浮点型,其实是会参与运算   那None和NaN有什么区别呢:   None是Python的一种数据类型,NaN是浮点类型 两个都用作空值   0 2018-01-01   1 2018-01-02   2 2018-01-06   dtype: object   字符串转换日期   排序   by: 哪几列排序   ascending = True 表示升序排列,   ascending = False 表示降序排列,   na_position = True 表示排序的时候,把空值放到前列,这样可以比较清晰看到哪些地方又空值   通过观察以上描述统计信息我们发现,销售数量有负值,相应的应收金额和实收金额也有负值,这是不符合常理的   通过条件判断筛选出数据   删除异常值前: (6549, 7)   删除异常值后: (6506, 7)   构建模型 (1) 月均消费次数   业务指标 1: 月均消费次数 = 总消费次数/月份数   获取总消费次数   #获取时间范围   月份数: 6   业务指标1:月均消费次数= 890   (2) 月均消费金额   业务指标2:月均消费金额 = 50668.3516   (3) 客单价   客单价:56.9094   这份完整版的Python全套学习资料已经上传,朋友们如果需要可以点击链接免费领取或者滑到最后扫描二v码【】   需要的话可以点击这里ὄ;[CSDN大礼包:《python学习路线&全套学习资料》免费分享](安全链接,放心点击)   ὄ;一、Python所有方向的学习路线   Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。   ὄ;二、Python必备开发工具   ὄ;三、Python视频合集   观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。   ὄ; 四、实战案例   光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)   ὄ;五、Python练习题   检查学习结果。   ὄ;六、面试资料   我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。   ὄ;因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方CSDN官方认证二维码或者点击链接免费领取【】   需要的话可以点击这里ὄ;[CSDN大礼包:《python学习路线&全套学习资料》免费分享](安全链接,放心点击)
1
0条评论
1收藏
发布于2023-06-09
0人赞同了该回答
  数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用,使得数据的价值最大化   数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。 数据分析的数学基础在20世纪早期就已确立,但直到计算机的出现才使得实际操作成为可能,并使得数据分析得以推广。   分析用户的消费行为制定促销活动的方案制定促销时间和粒度计算用户的活跃度分析产品的回购力度分析广告点击率决定投放时间制定广告定向人群方案决定相关平台的投放......数据分析使用适当的方法对收集来的大量数据进行分析,帮助人们做出判断,以便采取适当的行动   保险公司从大量赔付申请数据中判断哪些为骗保的可能支付宝通过从大量的用户消费记录和行为自动调整花呗的额度短视频平台通过用户的点击和观看行为数据针对性的给用户推送喜欢的视频   岗位的需求是 Python 数据科学的基础是机器学习的基础提出问题准备数据分析数据获得结论成果可视化1. Anaconda   官网:https://www.anaconda.com 下载安装对应安装包即可注意:安装目录不可以有中文和特殊符号Anaconda集成好了数据分析和机器学习中所需要的全部环境   2. Jupyter   Jupyter就是Anaconda提供的一个基于Web的可视化开发工具   3. Jupyter的基本使用   启动:在终端中输入:,按下回车即可新建文件:New -->> python3Cell(代码块)有两种模式code:编写代码markdown:编写笔记快捷键添加cell:或删除:修改cell的模式修改成markdown模式:修改成code模式:执行cell内代码:自动补全:打开帮助文档: 在Python中我们数据分析离不开以下三剑客   NumpyPandasMatplotlibNumpy(Numerical Python) 是 Python 语言中做科学计算的基础库。重在于数值计算,也是大部分 Python 科学计算库的基础,多用于在大型、多维数组上执行的数值运算。1. Numpy的创建   使用 创建一个一维数组使用 创建一个多维数组使用 创建一个多维数组使用 创建一个多维数组使用 创建一维的等差数列数组使用 创建一维的等差数列数组使用 创建随机的多维数组2. Numpy的常用属性   shapendimsizedtype3. Numpy的索引和切片   索引操作和列表同理切片操作4. Numpy的矩阵操作   矩阵变形级联操作 将多个 Numpy 数组进行横向或者纵向的拼接axis轴向参数0:列1:行常用的聚合操作sum, max, min, mean常用的统计函数标准差:一组数据平均值分散程度的一种度量方差:统计中的方差是每个样本值与全体样本值的平均数之差的平方值的平均数,即 。换句话说,标准差就是方差的平方根。Pandas模块   1. 为什么学习Pandas Numpy能够帮助我们处理的是数值型的数据,而Pandas可以帮我们处理除数值型以外的其他类型数据   2. Pandas的数据结构   Series是一种类似于一维数组的对象,由下面两个部分组成:values:一组数据(ndarray类型)index:相关的数据索引标签   DataFrame是一个表格型的数据结构。其既有行索引,也有列索引。行索引:index列索引:columns值:values3. Series操作   3.1 Series的创建   index用来指定显式索引,可以增强Series的可读性。   也可以使用字典作为数据源。   3.2 Series的索引和切片   3.3 Series的常用属性   shapesizeindexvaluesdtypes 3.4 Series的常用方法   , , 3.5 Series的算数运算   索引一致的元素进行算数运算否则补空   4. DataFrame操作   4.1 DataFrame的创建   可使用 ndarray 创建。   也可以使用字典作为数据源。   用来指定显式索引,可以增强 DataFrame 的可读性。   4.2 DataFrame索引和切片   iloc:通过隐式索引取行loc:通过显式索引取行对行进行切片对列进行切片4.3 DataFrame常用属性   shapevaluescolumnsindex4.4 DataFrame的常用方法同Series4.5 DataFrame的算数运算同Series4.6 DataFrame的级联和合并级联操作   pd.concatpd.append接下来我们伪造两组DataFrame数据。   使用   匹配级联横向级联   不匹配级联不匹配指的是级联的维度和索引不一致。例如纵向级联时列索引不一致,横向级联时行索引不一致。有两种连接方式外连接:补NaN(默认模式)内连接:只连接匹配的项PS:如果想要保留数据的完整性必须使用参数 (外连接)使用   只能纵向级联,并且只能外级联,不可以内级联(一般不用)。合并操作   与 的区别在于, 需要依据某一共同列来进行合并。使用 合并时,会自动根据两者相同 column 名称的那一列作为 key 来进行合并。注意:每一列元素的顺序不要求一致一对一合并首先我们来伪造两组 DataFrame。   使用   一对多合并首先我们来伪造两组 DataFrame。   使用   多对多合并首先我们来伪造两组 DataFrame。   使用   5.1 为什么需要做数据清洗   原始数据中可能存在缺失值(空值)这些值是没有意义的,并且会干扰我们分析结果的产生   重复值重复值是没有必要多次分析和处理的   异常值由于数据采集手段不同等,数据中可能会产生异常值,异常值同样会干扰我们分析结果的产生   5.2 处理缺失值   有两种缺失值:Nonenp.nan(NaN)   两种缺失值的区别None:None对象类型np.nan:浮点型   为什么在数据分析中需要用到浮点类型的空而不是对象类型的?   会报 ,而 结果是 。它不会干扰或者中断运算。NaN可以参与运算None不可以参与运算在Pandas中如果数据中遇到了None形式的空值则Pandas会将其强转成NaN的类型。缺失值处理操作我们来伪造一组带有缺失值的数据。   方法1:对缺失值进行过滤(删除空所在的行数据) 搭配 搭配   使用 可以直接将缺失的行或者列数据进行删除方法2: 对缺失值进行填充   5.3 处理重复数据我们来伪造一组带有重复值的数据。   使用   5.4 处理异常值异常值是什么?   异常值指的是可能会对具有实质性意义的估计产生偏见或影响,并且会增加误差方差的值。接下来我们伪造一组带有异常值的数据。   然后我们来实现异常值的清洗。   6.1 替换操作   替换操作可以同步作用于Series和DataFrame中单值替换普通替换:替换所有符合要求的元素按列指定单值替换 多值替换列表替换字典替换(推荐)首先我们来伪造一组DataFrame。   使用   6.2 映射操作   概念:创建一个映射关系列表,把values元素和一个特定的标签或者字符串绑定(给一个元素值提供不同的表现形式)map是Series的方法,只能被Series调用首先我们来伪造一组DataFrame。   使用   例:超过3000部分的薪资缴纳50%的税,计算每个人的税后薪资   6.3 分组聚合操作   数据分类处理的核心: 函数 属性查看分组情况分组接下里我们伪造一组DataFrame。   使用 和   聚合   高级数据聚合   使用 分组后,也可以使用 和 提供自定义函数实现更多的运算 <==> 和 都会进行运算,在 或者 中传入函数即可 和 也可以传入一个 表达式6.4 数据加载   读取csv文件数据   读取数据库中的数据matplotlib模块可以帮助我们轻松的将数据制成图表可视化展示。首先我们倒入全局的模块   1.1 绘制单条和多条线形图   1.2 设置坐标系的比例   1.3 设置图例   1.4 设置轴的标识   1.5 图例保存   1.6 曲线的样式和风格   还有其他多种参数的样式哦,详情请见库的源代码。2. 绘制柱状图   其余用法和线形图类似。3. 绘制直方图   是一个特殊的柱状图,又叫做密度图。:可以是一个bin数量的整数值,也可以是表示bin的一个序列。默认值为10:如果值为True,直方图的值将进行归一化处理,形成概率密度,默认值为False:指定直方图的颜色。可以是单一颜色值或颜色的序列。如果指定了多个数据集合,例如DataFrame对象,颜色序列将会设置为相同顺序。如果未指定,将会使用一个默认的线条颜色:通过设置 为 创建水平直方图。默认值为 其余用法和线形图类似。4. 绘制饼图   ,饼图也只有一个参数 x饼图适合展示各部分占总体的比例,条形图适合比较各部分的大小其余用法和线形图类似。5. 散点图   , 因变量随自变量而变化的大致趋势其余用法和线形图类似。   PS:欢迎提出宝贵意见,如想询问技术问题可以留言区留言或加开发人员的微信(微信号:x118422)进行咨询~
0
0条评论
0收藏
发布于2023-06-09