《Python数据分析任务驱动教程》全套教学课件_第1页
《Python数据分析任务驱动教程》全套教学课件_第2页
《Python数据分析任务驱动教程》全套教学课件_第3页
《Python数据分析任务驱动教程》全套教学课件_第4页
《Python数据分析任务驱动教程》全套教学课件_第5页
已阅读5页,还剩981页未读 继续免费阅读

下载本文档

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

文档简介

单元1搭建开发环境《Python数据分析任务驱动教程》单元1搭建开发环境单元2科学计算库NumPy单元3数据分析库pandas基础知识单元4数据预处理单元5数据的分组与聚合单元6数据可视化单元7时间序列分析单元8机器学习入门单元9实战演练:用户行为分析全套可编辑PPT课件

学习目标/Target

了解数据分析的概念及层次,能够说出数据分析的概念以及4个层次

了解数据分析的应用领域或行业,能够列举至少3个数据分析的应用领域

熟悉数据分析的基本流程,能够归纳数据分析的基本流程

了解选择Python做数据分析的优势,能够说出Python做数据分析的优势学习目标/Target

了解Anaconda工具,能够说出Anaconda工具有哪些特点

熟悉管理环境Conda命令,能够通过命令创建、查看、激活、退出环境

掌握管理包或库的Conda命令,能够通过命令查看、安装、删除包或库

熟悉常见的数据分析库,能够归纳这些库的各自用途及其包含的功能学习目标/Target

掌握JupyterNotebook的启动方式,能够通过Anaconda或命令启动工具

熟悉JupyterNotebook的界面,能够归纳该界面包含的主要功能

掌握JupyterNotebook的基本使用方法,能够使用该工具编写与运行代码章节概述/Summary在当今竞争激烈的市场环境中,数据已经成为企业决策和发展的重要驱动力。从消费者行为到市场趋势,从产品创新到营销策略,数据无处不在,而对数据的深入分析和理解已成为企业获取竞争优势的关键。数据分析不仅能够帮助企业发现隐藏在海量数据中的商机,还能够提供有针对性的解决方案,促进业务增长和创新发展。Python在数据分析领域占据非常重要的位置,已经形成了完善的生态系统,它提供的库可以帮助开发人员有效解决各种复杂的问题。本章以3个任务为主线,对搭建Python数据分析开发环境的相关内容进行讲解。目录/Contents任务1-1任务1-2任务1-3安装Anaconda工具使用Anaconda工具安装库使用JupyterNotebook编写程序安装Anaconda工具任务1-1任务描述一款得心应手的工具能显著提升工作效率,达到事半功倍的效果。在数据分析领域中,Anaconda是一个备受开发人员喜爱的工具,因为它不仅集成了各种必要的库,而且提供了简单易用的界面和管理工具,让开发人员能够轻松上手。任务描述【任务的具体要求】本任务要求读者在自己的计算机中安装Anaconda工具,为后续数据分析做好工具方面的准备。知识储备了解数据分析的概念及层次,能够说出数据分析的概念以及数据分析的4个层次学习目标1.什么是数据分析知识储备1.什么是数据分析数据分析是指使用适当的统计分析方法对收集到的大量数据进行分析,从这些数据中提取有用信息和形成结论,并加以详细研究和概括总结的过程。数据分析的概念数据分析的目的在于,从隐藏在一大批看似杂乱无章的数据信息中提炼出来有用的数据,以找出所研究对象的内在规律。数据分析的目的知识储备1.什么是数据分析数据分析按照复杂度和深度可以分为4个层次,分别是描述性分析、诊断性分析、预测性分析和规范性分析。数据分析的4个层次知识储备1.什么是数据分析数据分析的4个层次(1)描述性分析:发生了什么?描述性分析是数据分析中最简单的分析方法之一,它主要是在历史数据的基础之上,利用一些核心指标(如流量、转化率、收入、成本等)对业务的现状做出准确的描述,使人们能够对业务的整体情况有初步认知。描述性分析一般通过简单的数学运算和统计运算便可以完成对分析指标的分析,典型的分析指标有均值、中位数、众数、方差等,不需要更加复杂的计算逻辑。为了帮助用户轻松地理解分析指标,经常会搭配折线图、直方图等一些常见的图表进行展示。知识储备1.什么是数据分析数据分析的4个层次(2)诊断性分析:为什么会发生?诊断性分析建立在描述性分析的基础之上,它会根据业务逻辑,通过数据寻找引起最终结果的原因、影响因素,以及可以改变未来结果的有效方法。在诊断性分析中,企业相关人员需要基于对业务的理解,分析业务结果和众多影响因素的相关性,通过一些方式快速定位到业务结果和某些影响因素的关系,这些方式包括头脑风暴、调研、与业务关键角色进行深度访谈等。知识储备1.什么是数据分析数据分析的4个层次(3)预测性分析:可能会发生什么?预测性分析专注于预测并理解未来可能发生的情况,它通过分析历史数据与客户洞察总结过去的数据模式和趋势,对业务未来进行动态预测,并在此过程中为业务提供多方面的信息,包括设定实际的目标、圈定正确的客户群体、设计有效的营销计划、管理绩效的预期以及规避风险等。预测性分析可以用到的技术有很多,通过这些技术可以预测未来结果以及结果发生的可能性。由于预测性分析能够告诉企业未来可能发生的事情,所以这种方法会让企业采取更加主动的态度制定战略和决策。163知识储备1.什么是数据分析数据分析的4个层次(4)规范性分析:我该做些什么?规范性分析是数据分析中一种复杂的分析方法,它是在其他三种分析方法的基础上建立起来的。通过使用算法或最优化决策,规范性分析帮助企业规避未来可能发生的问题,并做出最佳决策。规范性分析可以预测多个事件发生的可能性,同时使企业在做出决策之前考虑每种可能的结果,这就意味着规范性分析的实施和管理更加复杂,它不仅需要依赖企业内部的历史数据,还需要依靠很多来自社交媒体的外部信息,甚至需要更加复杂的技术。知识储备了解数据分析的应用领域或行业,能够列举至少3个数据分析的应用领域或行业学习目标2.数据分析的应用领域或行业知识储备6个应用场景医疗保健的应用金融领域的应用市场营销的应用零售行业的应用制造业的应用社交媒体的应用2.数据分析的应用领域或行业知识储备市场营销的应用数据分析在市场营销中的应用广泛涵盖客户细分、个性化营销、效果评估、趋势监测等方面。通过数据分析,企业可以更精准地了解目标受众的需求与行为,从而制定更具针对性和个性化的营销策略,提高市场竞争力。数据分析带来了深刻变革,使市场营销更加精细化、高效化。2.数据分析的应用领域或行业知识储备金融领域的应用数据分析在金融领域广泛应用于风险管理、投资决策、客户关系管理和市场预测等方面。此外,数据分析还能帮助机构了解客户需求,实现个性化金融产品推荐,提升客户满意度和忠诚度。同时,数据分析对市场数据和趋势的分析可以帮助金融机构做出及时的投资决策,获取更高的收益,进而实现业务增长和盈利最大化的目标。2.数据分析的应用领域或行业知识储备医疗保健的应用数据分析在医疗保健领域的应用包括疾病预测与管理、患者行为分析、治疗效果评估、药物研发和医疗成本控制。通过分析患者数据,医疗机构可以预测疾病风险,优化治疗计划,并评估不同治疗方法的有效性。同时,新的数据分析应用还包括基因组学数据分析、生物传感器数据分析、医疗影像数据分析、医疗保健设备数据分析以及医疗文本数据分析,这些应用共同推动了医疗保健服务的提升和领域创新。2.数据分析的应用领域或行业知识储备零售行业的应用数据分析在零售行业的应用十分具体,涉及销售预测、库存管理、市场定位、客户行为分析等多个方面。通过深入分析销售数据,零售商不仅可以精准预测产品需求,避免库存过剩或不足,提高销售效率和盈利能力,还可以了解消费者的购买习惯和偏好,从而优化产品定位和促销策略,提高客户满意度和忠诚度。随着人工智能和大数据技术的引入,零售行业出现了一些突破性进展。2.数据分析的应用领域或行业知识储备制造业的应用数据分析在制造业的应用十分具体,涵盖了生产优化、质量控制、设备维护等方面。通过对生产数据的深入分析,制造企业可以实现生产流程的优化,提高生产效率和产品质量。近年来,随着工业互联网和物联网技术的发展,制造业出现了一些突破性进展,如智能工厂建设、预测性维护、实时监控等。2.数据分析的应用领域或行业知识储备社交媒体的应用数据分析在社交媒体领域的应用涵盖了用户行为分析、内容推荐、情感分析等多个方面。通过对用户生成的海量数据进行深度挖掘,社交媒体平台可以实现精准的用户画像,个性化推荐内容,提升用户体验和留存率。近年来,随着人工智能和自然语言处理技术的不断进步,社交媒体及时融入了新技术并出现了一些突破性进展,如情感分析应用于舆情监控、实时事件检测等。2.数据分析的应用领域或行业知识储备熟悉数据分析的基本流程,能够归纳数据分析的基本流程学习目标3.数据分析的基本流程知识储备3.数据分析的基本流程数据收集数据分析数据展现基于对项目的理解,整理出分析的框架和思路。不同的项目对数据要求不一样,使用的分析手段也是不一样的。数据预处理按照确定的数据分析思路和框架内容,有目的收集、整合相关数据的过程,它是数据分析的基础。对收集到的数据进行清洗、合并、重塑和转换等操作,方便后续开展数据分析的工作。数据分析是指通过分析手段、方法和技巧对准备好的数据进行探索、分析,从中发现因果关系、内部联系和业务规划,为商业提供决策参考。数据分析的结果都会通过图表方式进行展现,借助图表这种展现数据的手段,可以更加直观地呈现信息、观点和建议。明确目的和思路基本流程知识储备了解Python做数据分析的优势,能够说出Python在做数据分析方面有哪些优势学习目标4.为什么选择Python做数据分析知识储备4.为什么选择Python做数据分析很多编程语言都可以做数据分析,比如Python、Java、C++等,Python凭借着自身无可比拟的优势,被广泛地应用到数据分析领域,并逐渐衍生为主流的编程语言。知识储备4.为什么选择Python做数据分析01语法简单精炼,适合初学者入门02拥有众多成熟的库和活跃的社区03拥有强大的通用编程能力04人工智能时代的通用编程语言05方便对接其他编程语言Python的优势知识储备4.为什么选择Python做数据分析Python相比其他编程语言,语法简单,代码可读性高,非常适合初学者学习。例如,在使用Python处理数据时,如果希望将一组性别数据转换成计算机能够运算的数值形式,也就是说“男”变成“0”,“女”变成“1”,这时可以直接用一行列表推导式完成,代码十分简洁。(1)语法简单精炼,适合初学者入门Python在数据分析、科学计算、数据可视化等方面都有非常成熟的库和活跃的社区,这为Python成为数据处理的重要解决方案提供了有力支撑。Python拥有NumPy、pandas、Matplotlib、scikit-learn等一些非常优秀的库,其中pandas在处理中型数据方面有着很大的优势,并逐渐成为各行各业进行数据处理任务的首选库。此外,Python还有众多活跃的社区,为开发者提供这种技术支持。(2)拥有众多成熟的库和活跃的社区知识储备4.为什么选择Python做数据分析Python的强大不仅体现在数据分析方面,而且在网络爬虫、Web开发等领域也有着广泛应用,这对一家公司来说,使用一种编程语言完成全部业务成为可能。例如,使用爬虫框架Scrapy收集数据,然后把收集到的数据交给pandas库进行处理,最后使用Django框架开发Web网站展示,整个过程中所有任务全部是用Python完成的,大大地提高了公司的开发效率。(3)拥有强大的通用编程能力在人工智能领域中,Python已经成为了十分受欢迎的编程语言,这主要得益于其语法简洁、丰富的库和社区,使得大部分深度学习框架都优先支持Python语言编程。比如目前比较流行的深度学习框架PyTorch,它在Torch里面加入了很多使用Python编写的功能,变得更加灵活。(4)人工智能时代的通用语言知识储备4.为什么选择Python做数据分析Python作为一门胶水语言,能够以多种方式与其他语言(比如C、Java等)的组件“粘连”在一起,可以轻松地操作其它语言编写的库,这就意味着用户可以根据需要给Python程序添加功能,或者在其它环境系统中使用Python语言。(5)方便对接其他语言知识储备了解Anaconda工具,能够说出Anaconda工具有哪些特点学习目标5.Anaconda工具简介知识储备5.Anaconda工具简介Anaconda是目前比较流行的用于数据分析的开发工具,它包含了Conda(开源的包管理器和环境管理器)、Python、数百个科学计算包或库及其依赖项,可以通过Conda工具便捷地获取和管理包或库,同时能够对开发环境进行统一管理。此外,它默认安装了很多工具,包括IPython、JupyterNotebook等。知识储备5.Anaconda工具简介01综合性强02灵活的环境管理03便捷的工具04支持跨平台Anaconda的特点知识储备5.Anaconda工具简介Anaconda包含数百个与数据科学相关的包或库,其中包括但不限于NumPy、pandas、SciPy、scikit-learn等,这些包和库涵盖了数据处理、机器学习、深度学习、自然语言处理等多个领域,满足了数据科学从业者在各种任务中的需求。Anaconda也支持R语言,提供了丰富的R语言包和库,使得R语言开发人员也能够充分利用Anaconda工具的优势。(1)综合性强Anaconda允许用户轻松创建多个独立的工作环境,每个环境都可以拥有自己的包和库版本,互不干扰。Anaconda的Conda包管理器能够智能地处理包之间复杂的依赖关系,自动解决依赖冲突,并确保环境中的包能够正常协作。此外,Anaconda提供了便捷的环境版本控制功能,用户可以轻松地导出和导入环境配置,方便共享和备份环境。(2)灵活的环境管理知识储备5.Anaconda工具简介Anaconda提供了一个图形用户界面工具AnacondaNavigator,让用户可以直观地浏览当前环境下所有可用的包,并通过简单的单击操作来安装、更新或删除所需的包。此外,AnacondaNavigator还允许用户通过界面直接启动各种数据科学应用程序,比如JupyterNotebook、Spyder编辑器等,无须记住复杂的命令和路径。(3)便捷的工具Anaconda被设计为完全独立于操作系统的工具,它内置了对不同操作系统的充分支持,包括Windows、macOS和Linux等,因此用户可以在不同的操作系统上无须进行任何修改,便能够统一运行数据科学和机器学习工具。(4)支持跨平台任务分析访问Anaconda官方网站下载安装包。按照安装向导逐步操作即可完成安装。启动AnacondaNavigator工具。【任务的实现思路】任务实现右击安装包Anaconda3-2024.02-1-Windows-x86_64.exe选择以管理员的身份运行,以确保安装过程中有足够的权限进行更改或者配置,打开WelcometoAnaconda32024.02-1(64-bit)Setup界面。Step

1任务实现在上个界面中单击“Next”按钮进入LicenseAgreement界面。Step

2任务实现单击“IAgree”按钮同意最终用户许可协议,进入SelectInstallationType界面。Step

3仅为当前用户安装为所有用户安装任务实现选择JustMe选项,单击“Next”按钮进入ChooseInstallLocation界面。Step

4单击此按钮可以选择其他位置安装工具任务实现此处保持默认配置,单击“Next”按钮进入AdvancedInstallationOptions界面。Step

5是否在开始菜单中创建快捷方式是否允许将Anaconda3添加到系统环境变量是否将

Anaconda自带的解释器设为默认解释器是否在安装完成后清除软件包缓存任务实现勾选第4个复选框,单击“Install”按钮进入Installing界面,该界面中使用进度条提示用户当前工具的安装进度。Step

6任务实现等待片刻后,安装完成会自动进入InstallationComplete界面。Step

7任务实现在上个界面中,单击“Next”按钮进入Anaconda32024.02-1(64-bit)界面。Step

8任务实现单击“Next”按钮进入CompletingAnaconda32024.02-1(64-bit)Setup界面。取消勾选两个复选框,单击“Finish”按钮完成安装,关闭CompletingAnaconda32024.02-1(64-bit)Setup界面。Step

9是否启动AnacondaNavigator开始使用AnacondaDistribution的入门指南或教程任务实现在计算机桌面打开开始菜单,找到Anaconda3(64-bit)文件夹,单击该文件夹后可以看到该文件夹下包含了几个组件。Step

10管理包和环境的图形界面工具Anaconda自带的命令行工具基于Web的交互式开发环境重置Spyder的设置跨平台的、科学运算集成开发环境任务实现单击“AnacondaNavigator”图标,若能够正常启动AnacondaNavigator,则说明Anaconda工具安装成功。Step

11使用Anaconda工具安装库任务1-2任务描述当安装完Anaconda工具后,默认会自动创建一个名为base的环境,这个环境里面包含了预先安装的Python解释器以及许多常用的数据分析包或库,为开发人员提供了一个便捷的起点,以便快速开始数据分析工作。任务描述如果开发人员需要额外的库或特定版本的库,则可以通过Anaconda创建新的环境,并在新环境中安装所需的库,以满足不同场景下的特定需求。Anaconda提供了灵活管理环境和包的Conda工具,帮助开发人员轻松配置和管理不同环境下的包或库,从而保持项目的独立性。任务描述【任务的具体要求】本任务要求在base环境中安装第三方库pyecharts。知识储备熟悉管理环境的Conda命令,能够通过Conda命令创建、查看、激活、退出和删除环境学习目标1.使用Conda管理环境知识储备1.使用Conda管理环境Conda是一个开源的包管理器和环境管理器,负责安装、升级、删除包或库,以及创建、管理和切换不同的环境。Conda允许用户创建不同的环境,每个环境可以包含不同版本的包,从而避免在项目之间出现冲突。Conda的功能知识储备1.使用Conda管理环境Conda提供了一系列管理环境的命令,用于创建、查看、激活、退出和删除环境。若希望执行Conda命令,可以先在AnacondaNavigator页面找到“CMD.exePrompt”,单击“Launch”按钮启动AnacondaPrompt工具,或者直接在开始菜单中启动AnacondaPrompt工具,再在AnacondaPrompt中执行相应的Conda命令。Conda命令知识储备1.使用Conda管理环境管理环境的Conda命令(1)创建环境启动AnacondaPrompt工具后默认会进入base环境,通过condacreate命令可以创建一个新的环境。(base)C:\Users\itcast>condacreate--namemyenvChannels:-conda-forge-defaults……知识储备1.使用Conda管理环境管理环境的Conda命令(2)查看环境使用

condaenvlist命令可以查看系统中已经存在的环境列表,包括所有环境的名称以及路径。(base)C:\Users\itcast>condaenvlist#condaenvironments:C:\Users\itcast\Anaconda3base*C:\Users\itcast\anaconda3myenvC:\Users\itcast\anaconda3\envs\myenv知识储备1.使用Conda管理环境管理环境的Conda命令(3)激活环境使用

condaactivate命令可以激活指定的环境。(base)C:\Users\itcast>condaactivatemyenv(myenv)C:\Users\itcast>知识储备1.使用Conda管理环境管理环境的Conda命令(4)退出环境使用condadeactivate命令可以退出当前环境。(myenv)C:\Users\itcast>condadeactivate(base)C:\Users\itcast>知识储备1.使用Conda管理环境管理环境的Conda命令(5)删除环境使用condaremove命令可以删除指定的环境。(base)C:\Users\itcast>condaremove--namemyenv--allRemoveallpackagesinenvironmentC:\Users\itcast\anaconda3\envs\myenv:NopackagesfoundinC:\Users\itcast\anaconda3\envs\myenv.ContinuingenvironmentremovalEverythingfoundwithintheenvironment知识储备掌握管理包或库的Conda命令,能够通过Conda命令查看、安装、删除包或库学习目标2.使用Conda管理包或库知识储备2.使用Conda管理包或库管理包或库的Conda命令(1)查看当前版本通过conda–version或conda–V命令可以查看当前使用的Conda版本。(base)C:\Users\itcast>conda--versionconda24.1.2知识储备2.使用Conda管理包或库管理包或库的Conda命令(2)查看当前环境下的包或库信息通过condalist命令可以查看当前环境下已经安装的全部包或库的信息,包括名称和版本号。(base)C:\Users\itcast>condalist#packagesinenvironmentatC:\Users\itcast\anaconda3:#NameVersionBuildChannel_anaconda_depends2024.02py311_mkl_1abseil-cpp20211102.0hd77b12b_0anaconda-navigator2.5.2py311haa95532_0……知识储备2.使用Conda管理包或库管理包或库的Conda命令(3)查找包或库通过condasearch命令查找可供安装的包或库。condasearch--full-name包或库的全名(base)C:\Users\itcast>condasearch--full-namepython例如,查找全名为python的包有哪些版本可供安装:知识储备2.使用Conda管理包或库管理包或库的Conda命令(4)安装包或库通过condainstall命令既可以在当前环境中安装包或库,也可以在指定环境中安装包或库。condainstall[--name环境名称]包或库名称condainstalldjango例如,在当前环境中安装django包:知识储备2.使用Conda管理包或库管理包或库的Conda命令(4)安装包或库使用condainstall命令安装包或库时默认会到Anaconda官方的包索引数据库查找包,虽然它提供了许多包或库,但是数量远远少于PyPI的包索引数据库。为了保证在当前环境中顺利安装所需要的包或库,可以直接使用pip工具安装包或库。pip工具无法对环境进行管理,需要先切换到指定环境下,再使用pip命令安装包或库。pipinstalldjango例如,在当前环境中使用pip命令安装django包:知识储备2.使用Conda管理包或库管理包或库的Conda命令(5)删除包或库通过condaremove命令既可以删除当前环境中的包或库,也可以删除指定环境中的包或库。condaremove[--name环境名称]包或库名称condaremovedjango例如,在当前环境中删除刚才安装的django包:知识储备熟悉常见的Python数据分析库,能够归纳这些库各自的用途及其包含的功能学习目标3.常见的Python数据分析库知识储备3.常见的Python数据分析库NumPy常见的数据分析库pandaspyechartsscikit-learnMatplotlibSeaborn知识储备3.常见的Python数据分析库(1)NumPy库NumPy是Python中重要的科学计算库,专注于处理多维数组和矩阵数据。它提供了丰富的操作数组的函数或方法,不仅能够进行灵活多变的多维数组操作,还能够进行深奥复杂的数学与科学计算,为用户高效、便捷处理和分析数据提供便利。此外,NumPy还包括随机数生成、线性代数、图像处理等模块,并与SciPy、pandas等其他库紧密结合。知识储备3.常见的Python数据分析库(2)pandas库pandas是基于NumPy的数据分析库,专门为了解决数据分析任务而创建。它提供了高级的数据结构,通过这些数据结构能够处理各种数据类型和大小的数据集。pandas可以进行数据读写、清洗、重塑、聚合和分组等操作,同时具有灵活的数据索引和强大的时间序列功能。此外,pandas还提供了与Matplotlib等可视化库的紧密集成,能够轻松绘制各种统计图表。知识储备3.常见的Python数据分析库(3)Matplotlib库Matplotlib是Python中用于数据可视化的库,支持绘制折线图、柱形图、散点图、饼图等多种统计图表,能够以图表这种直观的方式展示数据。Matplotlib库除了绘制各种类型的图表外,还能够自定义样式、颜色和标签,并且支持在图表中添加标题、图例、注释等辅助元素。知识储备3.常见的Python数据分析库(4)Seaborn库Seaborn是一个基于Matplotlib的数据可视化库,专注于创建具有吸引力和信息丰富度的统计图表。它提供了简洁而高级的接口,让开发人员能够用简单易懂的函数实现复杂的可视化功能,包括绘制统计关系图、分类图和分布图等。知识储备3.常见的Python数据分析库(5)pyecharts库pyecharts是一个基于ECharts的Python数据可视化库,专注于创建交互式的图表。它不仅提供了丰富的图表类型,如折线图、柱形图、漏斗图、地图等,能够满足各种数据可视化的需求,还提供灵活的配置选项,让用户可以高度定制图表。知识储备3.常见的Python数据分析库(6)scikit-learn库scikit-learn是Python中专门针对机器学习开发的开源库,它建立于NumPy、SciPy和Matplotlib的基础之上,提供了广泛的机器学习算法,包括但不限于分类、回归、聚类、降维等,还集成了模型选择、预处理和评估的工具。知识储备3.常见的Python数据分析库上面介绍的NumPy、pandas、Matplotlib、Seaborn、scikit-learn库在安装Anaconda工具时已经自动下载,可以直接导入程序并使用,而pyecharts需要另行下载和安装。注意事项任务分析【任务的实现思路】启动AnacondaPrompt工具。在base环境下使用pipinstall命令安装pyecharts库。任务实现启动AnacondaPrompt工具。在该工具命令提示符后面输入安装pyecharts的命令。【任务的实现步骤】使用JupyterNotebook编写程序任务1-3任务描述JupyterNotebook是Anaconda附带的工具,它不仅可以像普通的编辑工具一样编写和运行代码,还可以将文本、代码、图片、公式和可视化结果组合成交互式文档。任务描述本任务要求在base环境中安装第三方库。【任务的具体要求】本任务要求使用JupyterNotebook编写一个简单的程序,输出“不积跬步,无以至千里;不积小流,无以成江海。”。知识储备掌握JupyterNotebook的启动方式,能够通过Anaconda或命令的方式启动JupyterNotebook工具学习目标1.启动JupyterNotebook知识储备1.启动JupyterNotebookJupyterNotebook(交互式笔记本,简称Jupyter)是一个支持实时代码、数学方程、可视化和Markdown的Web应用程序,它支持40多种编程语言。对于数据分析来说,JupyterNotebook的优点是能够重现数据分析的完整过程,并将说明文字、代码、图表、公式和结论都整合在一个文档中,用户可以通过电子邮件、Dropbox、GitHub和JupyterNotebookViewer将文档分享给其他人。Jupyter介绍知识储备1.启动JupyterNotebookJupyter的启动方式通过AnacondaNavigator启动JupyterNotebook通过命令的方式启动JupyterNotebook

方式一:方式二:知识储备1.启动JupyterNotebook通过AnacondaNavigator启动Jupyter单击Launch按钮启动知识储备1.启动JupyterNotebook通过命令启动JupyterNotebook执行命令后启动知识储备1.启动JupyterNotebook通过命令启动JupyterNotebook若希望JupyterNotebook显示其他目录,则需要先通过cd命令将当前路径切换至指定的目录,然后在此目录下输入命令“jupyternotebook”,执行该命令后会在JupyterNotebook首页看到指定目录的结构。知识储备熟悉JupyterNotebook的界面,能够归纳JupyterNotebook界面包含的主要功能学习目标2.JupyterNotebook界面详解知识储备2.JupyterNotebook界面详解在JupyterNotebook的首页中,单击页面右侧的“New”按钮会打开新建文件的下拉列表。新建文件的下拉列表文档,后缀名为.ipynb知识储备2.JupyterNotebook界面详解选择文档单击Notebook选项知识储备2.JupyterNotebook界面详解选择内核单击Select按钮知识储备2.JupyterNotebook界面详解文档页面知识储备2.JupyterNotebook界面详解标题栏图标和简称文档名称当前文件所处的状态Python图标知识储备2.JupyterNotebook界面详解菜单栏File菜单包含打开、重命名、保存、关闭等功能Edit菜单包含剪切单元格、复制单元格、删除单元格等一些与单元格有关的操作知识储备2.JupyterNotebook界面详解快捷键区域知识储备2.JupyterNotebook界面详解快捷键区域此类单元格的内容会被视为Python代码。用户可以使用Shift+Enter组合键运行单元格内的代码,运行的结果会在该单元格的下方显示。Code单元格此类单元格的内容是使用Markdown语言格式化的文本,用户可以设置文本格式,或者插入链接、图片、数学公式。Markdown单元格此类单元格的内容是纯文本,不会被解释器执行。Raw单元格知识储备2.JupyterNotebook界面详解编辑区域复制单元格上移单元格下移单元格上方插入单元格下方插入单元格删除单元格知识储备2.JupyterNotebook界面详解两种模式选中单元格按下“Enter”键即可进入编辑模式,处于该模式下的单元格可以编辑代码和文本。编辑模式选中单元格若按下“Esc”键即可进入命令模式,处于该模式下的单元格可执行键盘输入的快捷命令。命令模式知识储备2.JupyterNotebook界面详解查看快捷命令知识储备掌握JupyterNotebook的使用方式,能够使用JupyterNotebook工具编写与运行代码学习目标3.JupyterNotebook的基本使用方法知识储备编辑与运行代码①在第一个单元格中输入并运行代码3.JupyterNotebook的基本使用方法知识储备编辑与运行代码②在新的单元格中编写并运行代码3.JupyterNotebook的基本使用方法知识储备编辑与运行代码③修改第一个单元格中的代码并重新运行3.JupyterNotebook的基本使用方法知识储备设置标题使用“#”字符作为标记写标题。

例如,添加一级标题和二级标题:#一级标题##二级标题###三级标题####四级标题#####五级标题#第一个标题##简单示例3.JupyterNotebook的基本使用方法知识储备导出文件JupyterNotebook还有一个强大的功能——导出功能,用于将脚本文件导出为多种格式的文件,比如HTML(.html)、PDF(.pdf)、Notebook(.ipynb)、Python(.py)、Markdown(.md)等。3.JupyterNotebook的基本使用方法任务分析【任务的实现思路】在JupyterNotebook中新建一个文档。在文档的单元格中编写相应的代码。执行包含相应代码的单元格。任务实现新建文档,命名为Chapter01。在该文档的单元格中编写代码。编写完成后运行单元格的代码。【任务的实现步骤】单元2科学计算库NumPy《Python数据分析任务驱动教程》学习目标/Target

了解NumPy数组的相关概念,能够说出数组、维度和轴的概念

熟悉NumPy数组的属性,能够归纳ndim和shape属性的作用

熟悉NumPy数组的数据类型,能够列举至少3个常用的数据类型

掌握创建数组的方式,能够选择合适的方式创建一维数组或二维数组

了解数组的索引方式,能够说出一维数组和二维数组索引方式的区别学习目标/Target

掌握数组的索引和切片操作,能够通过不同形式的索引获取数组元素

掌握转换数据类型方式,能够通过astype()方法将数组转换为指定数据类型

掌握数组的算术运算,能够实现数组与数组、数组与标量的算术运算

掌握数组的统计运算,能够通过统计运算方法实现相应的统计运算

掌握随机数模块,能够通过随机数模块生成包含随机数的数组学习目标/Target

掌握通用函数,能够熟练使用一元通用函数和二元通用函数进行数学运算

掌握数组的条件逻辑操作,能够通过where()函数实现条件逻辑的操作

掌握数组的重塑操作,能够通过reshape()方法重塑数组的形状

掌握数组的转置操作,能够通过T属性实现数组的简单转置操作

掌握数组的垂直堆叠操作,能够通过vstack()函数实现数组的垂直堆叠学习目标/Target

掌握数组的排序操作,能够通过sort()方法实现数组的排序操作

掌握数组的检索操作,能够通过all()或any()函数检索数组的元素

掌握查找数组唯一元素的方式,能够通过unique()函数查找数组唯一元素

掌握数组的展开操作,能够通过flatten()函数将多维数组转换为一维数组章节概述/SummaryNumPy作为高性能科学计算库,是数据分析相关库的基础,掌握NumPy的功能及其用法,将有助于后续其他数据分析相关库的学习。本章以8个任务为主线,带领读者在完成任务的同时学习NumPy的相关知识。目录/Contents任务2-1任务2-2任务2-3创建象棋和围棋的棋盘填色小游戏评选优秀员工任务2-4计算同比增速目录/Contents任务2-5任务2-6任务2-7随机漫步转换销售数据分店销售信息汇总任务2-8兴趣班调查创建象棋和围棋的棋盘任务2-1任务描述象棋和围棋都是我国传统的棋类游戏,在我国有着悠久的历史和丰富的文化内涵,非常受欢迎。这两种游戏的棋盘各具特点,其中象棋的棋盘共有九十个交叉点,在固定的交叉点上起初摆放了32枚棋子,棋子包括将/帅、士、象/相、车、马、炮和兵/卒等七种;围棋棋盘是19×19的方格,方格上起初是没有任何棋子的。任务描述本任务要求在base环境中安装第三方库Pyecharts。【任务的具体要求】本任务要求运用数组的知识编写代码,分别模拟初始状态下的象棋棋盘模型和围棋棋盘模型。知识储备了解NumPy数组的相关概念,能够说出数组、维度和轴的概念学习目标1.NumPy数组的相关概念数组的4个概念数组维度轴秩知识储备1.NumPy数组的相关概念数组数组是编程语言中重要且复杂的数据结构,用于存储一组相同数据类型的元素。数据与Python中的序列类型相比,主要有以下几个特点:知识储备1.NumPy数组的相关概念特点1:数组通常具有固定的大小,一旦创建将无法动态增长或缩减。特点2:数组中的元素是任意数据类型的,但所有元素必须具有相同的数据类型。特点3:数组非常适合进行大规模数据的数学运算。维度又称为维数,在数学领域中是指描述对象状态所需的参数的数目。零维可以理解成一个无限小的点,它没有长度或宽度;一维可以理解成一条无限长的直线,它只有长度;二维可以理解成一个平面,这个平面有长度和宽度;三维可以理解成一个立方体,这个立方体有长度、宽度和高度。知识储备1.NumPy数组的相关概念维度维度为k的数组通常被称为k维数组。数组按维度可以分为一维数组、二维数组、多维数组,通常接触到的多维数组是三维数组。※

三维数组被认为元素是二维数组的数组,二维数组被认为元素是一维数组的数组。知识储备1.NumPy数组的相关概念维度轴(axis)是NumPy数组中十分重要的概念,它其实就代表数组的维度。数组的维度不同,它对应的轴的数量也不同。一维数组只有一个轴,轴的编号为0;二维数组有行列方向的两个轴,轴编号分别是0、1;三维数组有沿着层、行和列方向的三个轴,轴的编号分别为0、1、2。依此类推,N维数组有N个轴,轴的编号为0到N-1。知识储备1.NumPy数组的相关概念轴秩秩是轴的个数,例如,一维数组只有一个轴,那么该一维数组的秩就是1。知识储备1.NumPy数组的相关概念熟悉NumPy数组的属性,能够归纳ndim和shape属性的作用学习目标知识储备2.NumPy数组的属性ndarray对象NumPy中最重要的一个特点就是其N维数组对象,即ndarray(别名array)对象,该对象具有矢量算术能力和复杂的广播能力,可以执行一些科学计算。不同于Python内置的数组类型,ndarray对象拥有对多维数组的处理能力,这也是数值计算中缺一不可的重要特性。知识储备2.NumPy数组的属性ndarray对象的常用属性属性说明ndarray.ndim数组轴的个数ndarray.shape数组维度的元组,元组中各个元素表示数组在每个维度上的大小。ndarray.size数组元素的总个数,它的值等于shape属性中元组各元素的乘积ndarray.dtype描述数组中元素的数据类型,元素的数据类型既可以使用标准的Python类型创建或指定,也可以使用NumPy特有的数据类型来指定ndarray.itemsize数组中每个元素占用的内存大小,单位为字节(B)。例如,元素类型为float64的数组,该数组中各元素占用的内存大小为8(64/8)B知识储备2.NumPy数组的属性属性说明ndarray.ndim数组轴的个数ndarray.shape数组维度的元组,元组中各个元素表示数组在每个维度上的大小。ndarray.size数组元素的总个数,它的值等于shape属性中元组各元素的乘积ndarray.dtype描述数组中元素数据类型的对象,元素的数据类型既可以使用标准的Python类型创建或指定,也可以使用NumPy特有的数据类型来指定ndarray.itemsize数组中每个元素占用的内存大小,单位为字节。例如,元素类型为float64的数组,该数组中各元素占用的内存大小为8(64/8)个字节知识储备2.NumPy数组的属性shape属性用于描述数组的维度信息,它的值是一个由整数元素组成的元组,元组里面有多少个整数元素取决于数组的维度。ndarray对象的常用属性3种数组的属性一维数组的属性二维数组的属性三维数组的属性知识储备2.NumPy数组的属性熟悉NumPy数组的数据类型,能够列举至少3个常用的数据类型学习目标知识储备3.数组的数据类型常用的数据类型数据类型说明简写bool布尔类型,值为True或Falsebint8、uint8有符号和无符号的8位整型i或uint16、uint16有符号和无符号的16位整型i2或u2int32、uint32有符号和无符号的32位整型i4或u4int64、uint64有符号和无符号的64位整型i8或u8float16半精度浮点型(16位,其中正负号1位,指数5位,精度10位)f2float32单精度浮点型(32位,其中正负号1位,指数8位,精度23位)f4知识储备3.数组的数据类型知识储备3.数组的数据类型常用的数据类型数据类型说明简写float64双精度浮点型(64位,其中正负号1位,指数11位,精度52位)f8complex64复数类型,分别用两个32位浮点数表示实部和虚部c8complex128复数类型,分别用两个64位浮点数表示实部和虚部c16object_Python对象Ostring_固定长度的字符串类型Sunicode_固定长度的unicode类型U掌握创建数组的方式,能够选择合适的方式创建一维数组或二维数组学习目标知识储备4.创建数组创建数组的基本方式NumPy中提供了多种创建数组的方式,最基本的方式是通过array()函数创建数组,该函数会根据列表或元组创建不同维度的数组:如果列表或元组内部没有嵌套其他列表或元组,则会创建一维数组;如果嵌套了一层列表或元组,则会创建二维数组;如果嵌套了两层列表或元组,则会创建三维数组。创建一维数组importnumpyasnparr1d=np.array([1,2,3])创建二维数组arr2d=np.array([[1,2,3],[4,5,6]])创建三维数组arr3d=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])知识储备4.创建数组三维数组元素的排列方式知识储备4.创建数组创建数组的其他方式第1种:通过zeros()函数可以创建元素值都是0的数组。np.zeros((3,3))第2种:通过ones()函数可以创建元素值都为1的数组。np.ones((3,3))知识储备4.创建数组第3种:通过empty()函数创建一个未初始化的数组,该数组的特点是只分配了内存空间,它里面填充的元素都是随机的。np.empty((3,3))第4种:通过arange()函数可以创建一个等差数组,它的功能类似于range(),只不过arange()函数返回的结果是一维数组,而不是列表。np.arange(1,20,5)知识储备4.创建数组创建数组的其他方式第5种:通过linspace()函数也可以创建一个等差数组,不同于arange()函数,linspace()函数需要指定数组中元素的数量,而不需要指定步长。np.linspace(1,20,5)知识储备4.创建数组创建数组的其他方式指定数组的数据类型在使用前面介绍的函数创建数组时,可以通过dtype参数显式地指明数组的数据类型。np.array([1,2,3],dtype=np.float32)np.ones((3,3),dtype='int32')知识储备4.创建数组传入“模块名.类型”传入一个包含类型的字符串任务分析【任务的实现思路】模拟初始状态下的象棋棋盘模型。模拟初始状态下的围棋棋盘模型。填色小游戏任务2-2任务描述假设现在有一个8行8列的方格,每个方格需要被填充上指定的颜色,具体如下:从上往下奇数行偶数列的方格填充'黑',行数和列数从1开始。从上往下偶数行奇数列的方格填充'黑',行数和列数从1开始。4个角的方格填充'红'。其他位置的方格填充'白'。任务描述本任务要求在base环境中安装第三方库Pyecharts。【任务的具体要求】本任务要求运用数组的知识编写代码,完成符合上述填色要求的小游戏。了解数组的索引方式,能够说出一维数组和二维数组索引方式的区别学习目标知识储备1.数组的索引方式知识储备1.数组的索引方式数组是通过索引的方式标记元素的位置,数组的类型不同,索引方式也会有一些区别。一维数组的索引方式知识储备1.数组的索引方式每个元素对应两种索引,分别是正向索引和反向索引。正向索引从左向右依次递增,反向索引从右向左依次递减。二维数组的索引方式知识储备1.数组的索引方式每个元素对应行索引和列索引,其中行索引和列索引可以是正向索引或反向索引。掌握整数索引和切片的使用,能够熟练通过整数索引和切片获取数组的元素学习目标知识储备2.整数索引和切片NumPy中可以通过整数索引和切片访问和修改数组中的元素,数组的维度不同,整数索引和切片的用法也会有所不同。对于一维数组来说,整数索引和切片的用法与Python列表中索引和切片的用法相同;对于二维数组来说,整数索引和切片的用法要复杂一些。知识储备2.整数索引和切片整数索引的用法如果希望获取二维数组的一行元素,则可以通过“数组[行索引]”的形式实现。arr2d=np.array([[1,6,11,16,21],[2,7,12,17,22],[3,8,13,18,23],[4,9,14,19,24],[5,10,15,20,25]])arr2d[2]如果希望获取二维数组的单个元素,则需要通过“数组[行索引,列索引]”的形式实现。arr2d[2,1]知识储备2.整数索引和切片切片的基本用法如果希望获取二维数组的多行元素,则可以通过“数组[行索引的切片]”的形式实现。arr2d[:2]知识储备2.整数索引和切片arr2d[:2,:2]如果希望获取二维数组的部分元素,则可以通过“数组[行索引的切片,列索引的切片]”实现。知识储备2.整数索引和切片切片的基本用法索引与切片的混合用法arr2d[:,2]也可以混合使用切片与整数索引访问二维数组的部分元素。知识储备2.整数索引和切片掌握花式索引的使用,能够熟练通过花式索引获取数组的元素学习目标知识储备3.花式索引花式索引是指用整数数组或整数列表作为索引。花式索引的概念若花式索引操作的目标对象是一维数组,则会把花式索引的每个整数作为索引,通过索引获取相应位置的元素。若花式索引操作的目标对象是二维数组,则通过花式索引获取的结果是一行或多行元素。花式索引的用法知识储备3.花式索引使用花式索引操作一维数组importnumpyasnparr=np.array([10,6,5,11,18,16,9,0,3,20])

arr[[0,1,5]]

10616知识储备3.花式索引arr2d[[1,4]]知识储备3.花式索引使用花式索引操作二维数组arr2d[[1,4],[2,3]]如果想要访问二维数组中的部分元素,而不是整行元素,则需要通过两个花式索引完成,其中第一个花式索引中的整数会被作为行索引,第二个花式索引中的整数会被作为列索引。知识储备3.花式索引使用花式索引操作二维数组知识储备3.花式索引当使用两个花式索引访问二维数组时,需要确保两个花式索引对应的索引数组或列表的长度相等,并且长度不能超过二维数组中相应轴上的元素数量,否则可能会导致索引异常。注意事项掌握转换数组数据类型的方式,能够通过astype()方法将数组转换为指定的数据类型学习目标知识储备4.转换数组的数据类型NumPy中使用astype()方法可以将数组的数据类型转换其他的数据类型。(1)由整数转换为浮点数data=np.array([[1,2,3],[4,5,6]])float_data=data.astype(np.float32)float_(2)由浮点数转换为整数float_data=np.array(

[1.2,2.9,3.5])int_data=float_data.astype(

32)int_data(3)由字符串转换为整数str_data=np.array(['1','2','3'])int_data=str_data.astype(64)int_data知识储备4.转换数组的数据类型任务分析【任务的实现思路】创建一个8行8列的数组,元素均为'白'。将奇数行偶数列的元素设置为'黑'。将偶数行奇数列的元素设置为'黑'。将四个角的元素设置为'红'。评选优秀员工任务2-3任务描述已知某公司年终打算从销售部门评选优秀员工,评选的要求是绩效评估等级为A,年度目标完成率至少为110%,客户满意度评分4.5分以上。销售部门的负责人对所有员工的工作表现进行了统计。任务描述本任务要求在base环境中安装第三方库Pyecharts。【任务的具体要求】本任务要求运用数组的知识编写代码,帮助销售部门的负责人筛选出符合要求的员工姓名。掌握布尔索引的使用,能够熟练通过布尔索引获取数组中符合条件的的元素学习目标知识储备布尔索引布尔索引指的是将一个布尔数组或布尔列表作为数组的索引。布尔索引的概念使用布尔索引访问数组时,NumPy会将布尔数组或布尔列表与数组按位置对齐,自动筛选出数组中与布尔值True位置对应的元素,同时忽略与False位置对应的元素,最终返回一个由符合条件的元素组成的新数组。布尔索引的用法知识储备布尔索引※

布尔数组或布尔列表的长度必须与数组中相应轴上元素的数量保持一致。布尔索引的使用知识储备布尔索引创建二维数组student_score=np.array([[79,88,80],[89,90,92],

[83,78,85],[78,76,80]])根据布尔数组获取符合条件的元素student_score[

student_score>80]布尔索引与切片混合使用知识储备布尔索引根据布尔列表获取符合条件的元素student_score[[True,False,True,False],:2]任务分析【任务的实现思路】创建数组,用于保存所有员工的工作表现。根据筛选要求构建布尔索引。根据布尔索引获取员工信息。输出员工姓名。计算同比增速任务2-4任务描述同比增速是指与去年同期相比的增长速度,是评估一个数据集发展趋势的重要指标之一。为了了解公司今年各季度销售额的变化情况,某公司分别统计了今年和去年各季度的销售额。任务描述本任务要求在base环境中安装第三方库Pyecharts。【任务的具体要求】本任务要求运用数组的知识编写代码,分别计算今年每月的同比增速、全年的平均增速、全年的最高增速和全年的最低增速。掌握相同形状数组的算术运算,能够实现相同形状数组的算术运算学习目标知识储备1.形状相同的数组的算术运算在NumPy中,形状相同的数组进行任何算术运算时都会应用到元素级别,即对数组中对应位置的元素依次执行相应的算术操作,并将算术操作后得到的结果组成一个新的数组。同样的规则也适用于其他相应的算术运算符。知识储备1.形状相同的数组的算术运算掌握形状不同的数组的算术运算,能够实现形状不同的数组的算术运算学习目标知识储备2.形状不同的数组的算术运算在NumPy中,形状不同的数组在执行算术计算时可能会触发广播机制,该机制会对参与运算的数组进行扩展,使扩展后的数组具有相同的形状,这样就可以按照形状相同数组的算术运算规则进行操作。并非所有的数组进行算术运算都会触发广播机制,这主要取决于数组的形状是否兼容。什么是形状兼容呢?知识储备2.形状不同的数组的算术运算形状兼容的判定规则以两个数组为例,这两个数组的形状右对齐,之后按照从右向左(从最后一个维度开始往前)的顺序逐个比较对应纬度是否满足以下任意一种情况。情况1:两个数组在该维度的大小相等。情况2:其中一个数组在该维度的大小为1。知识储备2.形状不同的数组的算术运算如果数组的形状在每个维度都满足上述任意一种情况,说明两个数组的形状兼容。知识储备2.形状不同的数组的算术运算如果两个数组的维度不同,较小维度数组会缺失某些维度,在这种情况下,缺失的维度会被假定为大小为1。注意事项形状兼容的示例A(2darray):5x4

B(1darray):4

Result(2darray):5x4C(4darray):8x1x6x1D(3darray):7x1x5Result(4darray):8x7x6x5维度相等有一方维度为1知识储备2.形状不同的数组的算术运算扩展数组的过程知识储备2.形状不同的数组的算术运算掌握数组与标量的算术运算,能够实现数组与标量的算术运算学习目标知识储备3.数组与标量的算术运算形状相同的数组之间进行算术运算时,运算会自动作用于对应位置的每一对元素。类似地,数组与标量进行算术运算时,标量会被自动作用于数组的每个元素,让每个元素分别与该标量进行加法、减法、乘法、除法等操作,操作后生成一个与原数组形状相同的新数组,新数组中每个元素是原数组中对应位置的元素与标量进行运算后得到的结果。知识储备3.数组与标量的算术运算掌握数组的统计运算,能够通过统计方法实现相应的统计运算学习目标知识储备4.数组的统计运算知识储备4.数组的统计运算在数据分析中,除了对数组进行常见的算术运算之外,还可以对数组进行各种统计运算,比如计算平均值、中位数、标准差、相关系数等。统计运算的常见方法方法说明sum()计算数组中元素的和mean()计算数组中元素的平均值min()找出数组中的最小值max()找出数组中的最大值argmin()找出数组中最小值的索引argmax()找出数组中最大值的索引cumsum()计算数组元素的累计和cumprod()计算数组元素的累计积知识储备4.数组的统计运算任务分析【任务的实现思路】创建两个数组,分别保存去年和今年各月的销售额。计算每月的同比增速。计算全年的平均增速。计算全年的最高增速。计算全年的最低增速。随机漫步任务2-5任务描述在一片空旷的平地上有一个人,他起初停留在平地的某个位置,之后便固定直线随机向前或者向后走。假设他在这片平地上一共随机走了2000步,一步的距离为0.5米,向前走一步记为1,向后走一步记为-1。任务描述本任务要求在base环境中安装第三方库Pyecharts。【任务的具体要求】本任务要求运用数组的知识

温馨提示

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

评论

0/150

提交评论