Py数据基础与分析3_第1页
Py数据基础与分析3_第2页
Py数据基础与分析3_第3页
Py数据基础与分析3_第4页
Py数据基础与分析3_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

滴滴出行智能调度系统大数据分析“Python大数据分析与可视化项目三01项目概述3.1项目概述在现代城市交通中,网约车服务已经成为人们日常出行的重要方式之一。为了更好地优化资源配置、提升服务质量并增强用户体验,滴滴出行需要对其庞大的订单数据进行深入分析。本项目通过对顺风车和快车订单数据的处理与分析,帮助滴滴出行了解不同司机的表现、车型分布以及乘客评价等信息,从而为智能调度系统的优化提供数据支持。通过使用Python中的NumPy和Pandas库,实现从数据清洗到统计分析的一系列操作,并将结果保存至文件中以供进一步分析。02学习目标3.2学习目标熟悉Pandas数据结构。掌握数据的导入与清洗。掌握订单数据的分类、排序和分组统计。03知识积累3.3知识积累Python是一门简单易学且功能强大的编程语言。它拥有高效的高级数据结构,并且能够用简单又高效的方式进行面向对象编程。一、Pandas数据结构Pandas的两个主要数据结构为Series(一维数组结构)和DataFrame(二维数组结构)。这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数据分析典型案例。对于图3-1所示的一个部门费用统计表,统计一个季度内各部门的费用使用情况。一维数组对象Series包含列数据和列索引,如图3-2所示,二维数组对象DataFrame包含行、列数据和行索引、列索引,如图3-3所示。3.3知识积累Python是一门简单易学且功能强大的编程语言。它拥有高效的高级数据结构,并且能够用简单又高效的方式进行面向对象编程。1.维数组SeriesSeries是一种类似于一维数组的对象,它由一组数据(NumPy中的数据类型)以及一组与之相关的数据标签(即索引)组成。(1)创建Series在Pandas中,Series函数用来创建一维数组对象Series,它的使用格式如下:参数说明:data:一组数据(ndarray类型)。index:数据索引标签,默认从0开始。dtype:数据类型。name:设置名称。copy:拷贝数据,默认为False。创建Series对象后,可以通过设置Series属性达到修改Series的目的,Series常用属性见表3-1。3.3知识积累Python是一门简单易学且功能强大的编程语言。它拥有高效的高级数据结构,并且能够用简单又高效的方式进行面向对象编程。Series的表现形式为:索引在左边,值在右边。若没有为数据指定索引,自动创建一个0到N-1(N为数据的长度)的整数型索引。可以通过Series的values和index属性获取其数组表示形式和索引对象,索引列表index,包含的可以是整数,也可以是字符串。(2)Series常用函数Series可以用ndarray或dict所有索引操作和函数,常见函数见表3-2。3.3知识积累2.二维数组DataFrameDataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。DataFrame既有行索引也有列索引,它可以被看做由Series组成的字典(共用同一个索引)。DataFrame中的数据是以一个或多个二维块存放的,而不是列表、字典或别的一维数据结构。(1)DataFrame生成在Pandas中,DataFrame函数用来创建二维数组对象DataFrame,它的使用格式如下:(2)DataFrame属性通过属性的属性可以查看定义的数据,DataFrame常用属性见表3-3。一维数组数据Series是二维数组数据DataFrame的子集,通过类似字典标记的方式或属性的方式,可以将DataFrame的列获取为一个Series,例如,淘宝某新开店铺产品日销售表frame中包含三列数据'商品名称','单价','数量',任意抽取一列即可生成一维数组数据Series。3.3知识积累二、文件数据读取和写入如果已在Excel电子表格、文本文件或数据库中录入了数据,Python支持直接打开这些类型的文件,或从这些类型的文件中导入财务数据。在Python中,从文件获取外部数据有以下4个常用的方法:读取电子表格文件,如Excel文件读取文本文件的数据,如txt文件和csv文件读取统计软件生成的数据文件,如SAS数据集、SPSS数据集等读取数据库数据,如MySQL数据、SQLServer数据需要注意的是,Pandas采用了模块化设计,Excel文件的读写功能被分离到专门的引擎中。xlsx格式文件使用openpyxl引擎,因此读取和修改xlsx格式Excel文件时需要安装openpyxl模块是。前面已经讲解模块库的安装、加载、设置,这里不再赘述。1.读取excel文件在Pandas中,使用read_excel函数将读取excel自带的XLS或XLSX文件中的数据,该函数的使用格式如下:3.3知识积累2、写入excel文件在Pandas中,从文件读取的数据,以DataFrame或Seral格式保存在内存中。to_excel函数可以将数据保存为XLS或XLSX文件,该函数的使用格式如下。它的使用格式如下:3.读取csv文件read_csv函数用于导入CSV文件到DataFrame,其使用格式如下:4.写入csv文件to_csv函数用于导入CSV文件到DataFrame,其使用格式如下:3.3知识积累三、数据清洗数据清洗是对一些没有用的数据进行处理的过程。在数据分析工作中,很多数据集存在数据缺失、数据格式错误、错误数据或重复数据的情况,如果要使数据分析更加准确,就需要对这些没有用的数据进行处理。1.数据缺失在数据输入过程中,很容易出现数据遗漏现象,Pandas对象的所有描述性统计默认都不包括缺失数据。(1)isna函数Pandas中的isna()函数是一个功能强大的缺失值检测工具,它可以识别多种形式的缺失值标记,包括Python原生的None、NumPy的nan以及Pandas专有的NA。通常将isna()与.any()和.all()方法结合使用,以便灵活地判断数据中是否存在缺失值或是否全部为缺失值。需要注意的是,在数据分析中,处理缺失值需要采取合适的策略。相比简单地用0或均值填充,使用相邻数据进行填充通常能更好地保持数据的时序特征和整体趋势。可以选择用前一个有效值(向前填充)或后一个有效值(向后填充)来替代缺失值,这样能够更好地维持数据的连续性和真实性。3.3知识积累(2)直接赋值在Pandas中处理缺失值时,最常见且直接的方法是通过列赋值来替换缺失值。具体来说,使用numpy.nan标记缺失值,然后可以通过为指定列赋予新的值列表来更新数据。其调用格式如下:(3)dropna函数除了直接赋值外,Pandas还提供了dropna函数用于滤除缺失数据,其使用格式如下:(4)fillna函数fillna函数用来指定值的方式填充缺失数据,其使用格式如下:3.3知识积累2.重复数据在数据处理中,有时需要去除数据序列中的重复数据。(1)unique函数unique函数用于获取Series中的唯一值数组,删除重复数据。其使用格式如下:(2)drop_duplicates去重函数drop_duplicates用于删除数据中重复的行或者某几行中某几列的重复值。该函数的使用格式如下:3.数据格式化数据格式化可以增加数据的可读性,如统一数据的小数点位数、添加千位分隔符,还可以实现特定的功能,比如转换为百分比数据,百分比数据主要用于成绩分数等统计计算。(1)控制数据显示格式Pandas中的set_option函数用于设置和控制数据显示格式的重要工具,用来设置一些指定参数的值,其使用格式如下:四、数据抽取1在数据的分析过程中,并不是所有的数据都是我们想要的,这就需要提取部分数据,从源数据中抽取部分或全部数据到目标系统,从而在目标系统再进行数据加工利用。但是从哪取、何时取、如何取。数据的提取过程数据提取是将数据取出的过程,不同提取规则下的数据结果很难一致。Pandas中数据抽取函数见表3-6。3.3知识积累五、数据合并1在实际处理数据中,经常会遇到将多个表连接起来再进行数据的处理和分析的情况,Pandas中也提供了几种方法来实现数据合并功能。merge函数基于两个dataframe的共同列进行合并,该函数的使用格式如下:3.3知识积累六、数据分类1据分类指的是根据特定需求或标准,对数据进行自定义的归类与整理。例如,在处理客户信息时,我们可以根据客户的地理位置、购买历史或者偏好等因素,将他们分为不同的类别。Pandas中提供cut函数实现数据分类,该函数的调用格式如下:七、数据排序1数据排序通过浏览数据发现一些明显的特征或趋势,找到解决问题的线索,同时,数据排序本身就是数据分析的目的之一。美国的《财富》杂志每年都要在全世界范围内排出500强企业,通过这一信息,不仅可以了解自己企业所处的地位,清楚自己的差距,还可以从一个侧面了解到竞争对手的状况,有效制定企业的发展规划和战略目标。数据排序是按一定顺序将数据排列,Pandas提供了sort_values函数用于根据行、列数据进行排序,该函数的调用格式如下:3.3知识积累八、统计分组统计分组是统计学的基本统计方法之一,使零散资料系统化,但怎样使资料系统化,本着什么去归类,这就取决于统计分组。在取得完整、正确的统计资料前提下,统计分组的优劣是决定整个数据统计成败的关键,它直接关系到数据分析的质量。例如:将一所学校的人,根据老师,学生,男性,女性,年龄,成绩,特长等标志,进行分类统计。groupby函数返回包含有关组的信息的groupby对象利用groups属性可以用来查看分组的信息,从返回的结果中可以看到不同分组的样本在原数据框中的索引,见表3-8。1.groupby函数Pandas中的groupby函数用于对DataFrame对象进行分组,该函数的调用格式如下:3.3知识积累2.agg函数分组最主要的作用就是对各个组别进行分组描述,简单来说就是将一系列复杂的数据用几个有代表性的数据进行描述,进而能够直观的解释数据的规律。agg函数用来分别计算分组后每个组的最大值、最小值、和,数据计算函数见表3-9。3.3知识积累04思维导图3.4思维导图05任务一

滴滴出行订单数据清洗3.5任务一

滴滴出行订单数据清洗本任务涉及处理两个数据集,分别包含3000个滴滴出行订单信息(图3-5),其中一个数据集专门用于顺风车订单,另一个用于快车订单(图3-6)。任务的主要目标是确保数据的质量,通过识别和删除缺失值以及重复值来清理这些数据集。这将有助于提高数据分析的准确性和可靠性,从而为后续的决策提供坚实的数据基础。任务描述3.5任务一

滴滴出行订单数据清洗1.如何准确判断数据集中的缺失值和重复值?缺失值和重复值对数据分析的影响有多大?2.是否有可能通过其他方式(如插值或使用默认值)来处理缺失值,而不是简单地删除?3.在删除包含缺失值的行时,如何确保不会误删重要信息?4.对于重复值,是否应该考虑保留一条记录以供后续分析,还是完全删除以避免数据冗余?5.是否需要为清理过程创建日志或文档,以记录数据处理的步骤和决策?6.在处理订单信息时,如何确保遵守相关的数据保护法规和隐私政策?7.是否需要对敏感信息进行脱敏处理,以保护用户隐私?8.清理后的数据将如何支持后续的数据分析、挖掘或机器学习任务?9.是否可以从清理后的数据中提取有价值的洞察,以指导业务决策或优化服务?任务思考素养提升多样化的出行随着科技的飞速发展,共享经济模式在全球范围内迅速崛起。作为共享经济的代表之一,滴滴出行通过提供多样化的出行方式,极大地满足了不同用户的出行需求。其中,快车服务凭借其高效、便捷的优势,受到了广大用户的青睐。滴滴出行利用大数据分析和智能算法,优化了叫车流程,提高了叫车成功率,为用户提供了更加优质的出行体验,如图3-7所示。滴滴出行通过智能调度系统,能够快速匹配附近的司机和乘客,实现快速叫车。这一功能在早晚高峰、恶劣天气等出行需求激增时尤为重要,有效缓解了用户的出行压力。智能叫车系统的推出,不仅提高了叫车效率,也提升了用户的满意度和忠诚度。然而,智能叫车系统的背后也隐藏着一些问题和挑战。数据安全和隐私保护成为了一个重要议题。大量的用户信息和出行数据被收集和分析,如何确保这些数据的安全和隐私不被泄露是一个亟待解决的问题。智能调度系统可能会加剧市场竞争,导致一些小型网约车公司无法承受巨大的成本压力而被迫退出市场。此外,智能叫车系统也可能引发一系列社会问题,如交通拥堵、环境污染等。3.5任务一

滴滴出行订单数据清洗素养提升多样化的出行我们需要从多个角度出发,全面审视这一系统背后的问题和挑战。作为学生,应该清晰的认识到科技创新对于提升服务质量和用户体验的重要性,在未来的学习和工作中勇于探索、敢于创新,为社会的发展和进步做出贡献。智能叫车系统虽然带来了诸多便利,但也引发了一些社会问题。因此,学生应该增强责任意识,关注科技发展对社会的影响,积极寻求解决方案。例如,可以通过优化算法减少交通拥堵;加强环保意识,推动绿色出行等。通过对滴滴出行智能叫车系统的数据进行分析,学生可以学习如何运用大数据进行市场分析和预测。这种能力对于未来的学习和工作都具有重要意义。同时,我们也应该积极倡导健康有序的市场竞争环境,在追求经济效益的同时,企业也应该承担相应的社会责任。加强消费者权益保护和社会责任意识的培养,共同推动网约车市场的可持续发展。3.5任务一

滴滴出行订单数据清洗任务工单3.5任务一

滴滴出行订单数据清洗任务实施1.导入数据文件使用Pandas库加载包含顺风车订单和快车订单的两个CSV文件,输出订单信息,合并数据集,方便数据后期分析。运行上述代码后,会在当前目录下生成一个名为“滴滴出行智能调度系统订单_原始数据.xlsx”的文件,其中包含了顺风车订单和快车订单的信息数据,如图3-8所示。3.5任务一

滴滴出行订单数据清洗任务实施2.缺失值处理对于每个数据集,检查是否存在任何缺失值。如果发现缺失值,将采用删除整行、前一个值填充和后一个值填充的方式来处理,以确保每条记录都是完整的。运行上述代码后,会在当前目录下生成3个不同缺失值处理结果文件:滴滴出行订单_删除缺失值.csv、滴滴出行订单_ffill填充.csv、滴滴出行订单__bfill填充.csv,如图3-9所示。3.5任务一

滴滴出行订单数据清洗任务实施3.重复值处理对于每个数据集,需要检查数据集中是否存在重复的记录。如果存在重复值,可以选择删除这些重复行,以确保每条记录都是唯一的。运行上述代码后,会在当前目录下生成1个处理数据中的重复值和缺失值的结果文件:滴滴出行订单__删除重复值.xlsx,如图3-10所示。3.5任务一

滴滴出行订单数据清洗4.数据格式设置数据中的重复值与缺失值进行有效处理后,进一步对数据格式进行了精心设置,将处理完毕的顺风车订单数据和快车订单数据妥善保存到新的xlsx文件中。最终获得了一个纯净无暇的数据集,没有任何缺失值和重复值的干扰。运行上述代码后,会在当前目录下生成一个名为“滴滴出行智能调度系统订单_数据处理后.xlsx”的文件,其中包含了删除缺失值和重复值后的快车订单和顺风车订单的信息数据,如图3-11所示。任务评价3.5任务一

滴滴出行订单数据清洗拓展提高3.5任务一

滴滴出行订单数据清洗在Pandas中,可以从各种数据源文件读取数据,并将其转换为DataFrame对象,函数具体见表3-10。与之对应的,将DataFrame对象保存到各种数据存储文件格式的函数,具体见表3-11。06任务二

滴滴出行订单数据预处理3.6任务二

滴滴出行订单数据预处理本任务模拟滴滴出行智能调度系统的大数据分析程序,可以帮助我们理解如何利用Pandas进行数据预处理。首先打开经过数据清洗保存的Excel文件,并将它们读取成DataFrame对象。然后,根据司机的性别和订单评价对数据进行分组,并对每组内的订单车程进行排序。接下来,计算所有订单的平均车程和中位数车程,以及车程的标准差、方差、协方差和相关系数作为离散程度的分析指标。此外,还统计了不同车型的出现频率。最后,将所有的分析结果写入到一个文本文件中,方便后续查看和记录。任务描述3.6任务二

滴滴出行订单数据预处理1.在进行分组操作时,是否需要考虑其他因素,比如时间戳或地理位置信息?2.除了基本的描述性统计量之外,是否还可以计算更多高级统计指标,如偏度、峰度等?3.在将分析结果写入文本文件时,如何组织内容结构使其更加清晰易读?是否可以通过添加标题、子标题等方式来提高可读性?4.虽然本任务要求将结果保存为文本文件,但在实际项目中,是否可以通过图表等形式更直观地展示分析结果?任务思考素养提升“一口价”派单近年来,随着共享经济的发展,网约车已经成为城市交通的重要组成部分。然而,随着市场的不断扩张,竞争也日益激烈。通过先进的智能调度系统,实现了对网约车海量订单数据的高效处理和优化分配,不但提升了出行服务的便捷性和效率,加强了对网约车市场运行监测数据的分析。2023年9月,成都市首次公布了网约车月度市场运行监测信息,揭示了当前网约车市场的饱和情况,如图3-12所示。3.6任务二

滴滴出行订单数据预处理素养提升“一口价”派单为了在竞争中占据优势,多家网约车平台推出了“一口价”政策,即服务商根据起终点信息,预估里程、时长、实时路况,综合报出价格,与乘客最终的付款金额一致,试图通过降低价格来吸引更多的乘客。这一政策的推出,不仅对网约车市场产生了深远的影响,也引发了关于市场竞争、消费者权益保护以及社会责任等方面的思考。“一口价”政策无疑加剧了网约车市场的竞争,还可能引发一系列社会问题。例如,过度的价格战可能导致行业利润下滑,进而影响到从业人员的收入水平和生活质量;同时,激烈的市场竞争也可能引发不正当竞争行为,如刷单、恶意差评等,破坏市场秩序。作为未来社会的建设者和参与者,学生应该意识到自己有责任运用自己的知识和技能,为社会的发展和进步做出贡献。另外,应该认识到企业在追求经济效益的同时也要承担相应的社会责任,只有积极履行社会责任的企业才能赢得社会的尊重和信任。同时,也应该积极倡导健康有序的市场竞争环境,加强消费者权益保护和社会责任意识的培养,共同推动网约车市场的可持续发展。3.6任务二

滴滴出行订单数据预处理任务工单3.6任务二

滴滴出行订单数据预处理任务实施1.数据准备

运行上述代码,设置基本的配置环境,读取当前目录下名为“滴滴出行智能调度系统订单_数据处理.xlsx”的文件,包含性别和评价分数分组的订单数据,为后面数据分析做准备。2.性别数据分组按照数据集中的性别数据进行分组,显示司机为男、女的订单数据。通过上面司机分别为男、女的分组结果,可以发现,滴滴出行的司机男性明显多于女性。造成男性在驾驶职业中的代表性更高的原因,可能是在传统文化中,男性可能更倾向于从事驾驶工作。3.评价分数分组根据司机的评价分数进行分组,输出分组结果。运行上述代码后,会在当前目录下生成一个名为“滴滴出行智能调度系统订单_评价分数分组.xlsx”的文件,其中包含了通过滴滴平台接单中获得的评价分数分组的工作表(5个工作表),如图3-13所示。3.6任务二

滴滴出行订单数据预处理任务实施4.行驶距离分类将行驶距离分为短途、中途、长途三类,对分类数据进行排序。运行程序后,会在当前目录下生成一个名为“滴滴出行智能调度系统订单_行驶距离分类.csv”的文件,其中包含了通过分类后的行驶距离工作表,如图3-14所示。通过比较不同类别订单的行驶距离数据,可以全面了解滴滴订单中行驶距离的分布情况及其对订单特性的影响,为进一步的数据分析和业务决策提供支持。3.6任务二

滴滴出行订单数据预处理任务实施5.订单行驶距离统计分析对滴滴订单中的行驶距离进行统计分析,包括计算最大值、最小值、总和、平均值、中位数,以及标准差、方差,可以帮助我们深入了解订单数据的分布特征和离散程度。运行上述代码后,在当前目录下生成一个名为“滴滴订单分析结果.txt”的文件,其中包含了通过滴滴平台接单的统计量数据,如图3-15所示。从最小值和最大值可以看出,短途订单的行驶距离相对较短,而长途订单的行驶距离则显著增加。这表明滴滴服务能够满足不同用户的出行需求,无论是短途还是长途。均值和中位数接近,表明数据分布相对均衡,没有极端的偏差。在每个类别中,均值和中位数的差异不大,说明数据分布比较对称。标准差和方差的值显示,随着行驶距离的增加,数据的分散程度也略有增加。这可能意味着长途订单的不确定性更高,或者用户在选择长途出行时更倾向于选择更远距离的目的地。通过这些分析,我们可以更好地理解滴滴平台上的行驶距离分布情况,以及用户出行模式的不同特点。这对于优化调度算法、提高服务质量和制定市场策略都具有重要意义。3.6任务二

滴滴出行订单数据预处理任务评价3.6任务二

滴滴出行订单数据预处理拓展提高3.6任务二

滴滴出行订单数据预处理数据的统计分析包括数据的离散程度分析、集中趋势分析、频数分析、分布以及一些基本的统计图形。一、集中趋势分析集中趋势分析是用各种起代表值作用的量度来反映变量数值趋向中心位置的一种资料分析方法。最常用的指标有算术平均值、几何平均值、和中位数和众数等。1.均值算术平均数(arithmeticmean),又称均值,是统计学中最基本、最常用的一种平均指标,分为简单算术平均数、加权算术平均数。它主要适用于数值型数据,不适用于品质数据。根据表现形式的不同,算术平均数有不同的计算形式和计算公式。2.中位数中位数是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论