当前位置: 首页> 财经> 产业 > 网页设计培训周志_网站设计风格的关键词_东莞seo排名公司_公司建网站多少钱

网页设计培训周志_网站设计风格的关键词_东莞seo排名公司_公司建网站多少钱

时间:2025/7/11 17:49:31来源:https://blog.csdn.net/m0_63845988/article/details/145807932 浏览次数:0次
网页设计培训周志_网站设计风格的关键词_东莞seo排名公司_公司建网站多少钱

Python数据分析_Pandas入门

【模块一:Python数据分析介绍】

【理解】企业数据处理流程介绍

  • 目标:理解企业数据处理流程介绍

  • 实施

    • 问题1:我们到底是做什么的?

      • 岗位

        • 初级:BI工程师、数据库开发工程师、数据分析师、ETL工程师
          • 数据库SQL + 高级语言Python + ETL工具 + 报表工具 + 项目业务经验
        • 中级:ETL工程师、数据仓库工程师、数据开发工程师、Spark开发工程师
        • 高级:数据开发工程师、实时开发工程师
      • 本质:通过对公司数据的处理分析,提供数据支持,让公司实现更高层次的盈利

      • 在这里插入图片描述

      • 在这里插入图片描述
        在这里插入图片描述

    • 问题2:企业如何才能基于数据实现数字化转型,实现降本增效?

      • Stage1:数据分析:数据分析侧重于数据的理解和挖掘

        • 定义:数据分析是指通过收集、处理和解释数据来揭示信息、指导决策、以及验证假设的过程。数据分析旨在发现趋势、关联性和模式,通常使用统计学和机器学习技术。

        • 应用:数据分析侧重于理解数据的含义和推断出结论,以指导业务运营和决策。
          在这里插入图片描述

      • Stage2:数据仓库:数据仓库关注数据的存储和管理

        • 定义:数据仓库是一个用于整合、存储和管理企业数据的集中式系统。它支持对大量历史数据的高效访问,并提供数据清洗、转换和加载(ETL)能力,为报表、分析和决策支持提供数据来源。

        • 应用:数据仓库主要用于保留和管理历史数据,以供后续的数据分析和业务报表使用。

          在这里插入图片描述
          在这里插入图片描述

      • Stage3:数据中台:数据中台更专注于数据的流动性、共享性以及价值创造

        • 定义:数据中台是公司内部的数据管理平台,旨在通过数据治理、数据标准化以及数据服务的方式实现数据价值最大化。数据中台有助于构建数据互联,促进各个业务系统间数据共享和协作。

        • 应用:数据中台并不仅限于数据的存储和整合,更强调数据的流动性和价值实现,包括数据产品化、数据服务化以及面向业务的数据应用。

          在这里插入图片描述

  • 小结:理解企业数据处理流程介绍

【理解】Python数据分析简介

  • 目标:理解Python数据分析简介

  • 实施

    • 问题1:数据分析有很多的语言和工具,为什么选用Python

      方面Python 数据分析SQL 数据分析R 数据分析BI 可视化分析
      语言使用Python编程语言进行数据分析。使用SQL编程语言进行数据检索和处理。使用R编程语言进行数据分析。使用多种工具(比如FineBI、Tableau、Power BI等)进行数据可视化。
      优点功能强大的数据处理库(例如Pandas、NumPy),适合大规模数据处理;能够进行机器学习和深度学习。高效的数据查询和处理,尤其适合与数据库配合使用;易于理解和学习专注于统计分析和可视化,拥有丰富的统计包和绘图库。提供直观的图表和仪表盘,使数据变得更容易理解和沟通。
      缺点对于简单数据查询来说可能比SQL语句繁琐;不如R生态圈在统计分析领域成熟;相对于BI工具,定制化较为复杂。主要用于数据库查询和管理,并不擅长数据统计和建模;不擅长数据分析的统计方法。在其他领域和领域集成方面没有Python广泛;语法结构相对灵活,导致学习曲线较陡。侧重于数据展示与交互,对于一些复杂统计分析可能需要借助其他工具完成。
      应用场景适用于大规模数据处理、机器学习和深度学习等领域;数据挖掘和预测建模。主要用于数据库查询和管理,数据存储系统监控与维护等领域。适用于统计建模、数据挖掘与数据可视化等领域;专注于统计学术界和数据科学领域。用于创建仪表板、报告、数据分享和即时决策支持等业务场景。
    • 问题2:Python怎么实现数据分析?

      模块功能应用场景
      Pandas底层是基于NumPy构建的,提供数据结构和分析工具,用于数据整理、清洗、分组、分析等操作。数据预处理、数据清洗、数据分析和建模。
      NumPy提供多维数组对象以及处理工具,用于科学计算、数值计算、大规模数据集的快速运算。科学计算、数值计算、大规模数据集的快速运算。
      Matplotlib用于创建二维图表和图形展示工具,支持可视化数据分析和结果展示。数据可视化、数据探索、数据分析结果展示。
      Seaborn基于Matplotlib,提供更多样式和效果的统计图表,简化了统计数据可视化的过程。统计数据可视化、数据探索、呈现统计数据特征。
      Scikit-learn提供了各种机器学习算法和模型的工具,包括分类、回归、聚类、降维等算法。机器学习建模、数据挖掘、模式识别。
      Statsmodels提供统计模型估计和测试的工具,包括回归分析、时间序列分析、假设检验等。经济统计分析、时间序列分析、回归分析等。
    • 问题3:Pandas是什么,有什么特点,为什么要学?

      • 概念
        • Pandas 是 Python 中的一个用于数据清洗、处理以及分析的第三方结构化数据处理开源库
        • 是用于商业和工程领域最流行的**结构化数据【表】**工具集
        • 大数据场景下,数据在流转的过程中,Pandas 中丰富的API能够更加灵活、快速的对数据进行清洗和处理
      • 理解:把Pandas当做一个数据库,里面的数据以表的形式存在,然后通过Python代码对表的数据进行处理
        • SQL:表:Table
          • 语法:select 1 from 2 where 3 group by 4 having 5 order by 6 limit 7
          • 优点:简单可读性强
          • 缺点:不够灵活
        • Pandas:表:DataFrame
          • 利用函数对数据做处理
          • 优点:灵活
          • 缺点:相对比较复杂
      • 优点
        • 性能高:底层是基于Numpy构建的,运行速度特别的快
        • 功能全:专门为数据处理而设计,提供了各种强大而灵活的分组、聚合、转换功能
      • 缺点
        • 只能用于单机数据处理,本身无法实现分布式处理,不能解决大数据平台处理问题
      • 应用
        • 数据分析领域中常用于数据量大到 Excel 严重卡顿,且又都是单机数据的时候,可以使用 Pandas分析
        • 可以使用 Pandas 在数据 ETL 中对各种数据源的数据进行清洗及处理
      • 目的
        • 掌握Python数据分析可以找数据分析、ETL等方向的岗位工作(核心)
        • Python开发Spark与Pandas类似,学习了Pandas的使用,可以更好的掌握PySpark的开发
  • 小结:理解Python数据分析简介

【实现】Anaconda的介绍及安装

Anaconda介绍

Anaconda是最流行的数据分析平台,全球两千多万人在使用。

  • Anaconda 附带了一大批常用数据科学包

  • Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的

  • 可以帮助你在计算机上安装和管理数据分析相关包

  • 包含了虚拟环境管理工具

简而言之,Anaconda是一个打包的集合,它里面预装好了conda、某个版本的python、众多packages、科学计算工具、虚拟环境等等。

也就是说,它把很多库都给你提前预装好了,为用户提供极大的便利。

Anaconda下载及安装

Anaconda 可用于多个平台( Windows、Mac OS X 和 Linux),可以在官网上下载对应平台的安装包。

官网链接:https://www.anaconda.com/

如果计算机上已经安装了某个版本的Python,依然不会影响到Anaconda的安装。

安装的过程很简单,一路下一步即可。

在这里插入图片描述

Anaconda使用

Anaconda可以通过向导(可视化)和命令行的方式来使用。

向导

Anaconda支持可视化,在开始菜单栏中:

在这里插入图片描述

点击Anaconda Navigator,进入初始化(稍等一会儿),初始化完毕后,会弹出如下内容
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

命令

Anaconda和Python解释器一样,也支持命令的方式来管理已经安装好的第三方依赖。

不过Anaconda除了支持pip的方式,还支持conda的方式。

#1.安装依赖
conda install 包名字
或者
pip install 包名字#2.注意,使用pip时最好指定安装源
阿里云:https://mirrors.aliyun.com/pypi/simple/
豆瓣:https://pypi.douban.com/simple/
清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/#3.示例:通过阿里云镜像安装,安装命令和之前一样
pip install 包名 -i https://mirrors.aliyun.com/pypi/simple/
虚拟环境

虚拟环境的作用:

  • 很多开源库版本升级后API有变化,老版本的代码不能在新版本中运行

  • 将不同Python版本/相同开源库的不同版本隔离

  • 不同版本的代码在不同的虚拟环境中运行

Anaconda支持两种方式创建虚拟环境:

  • 可视化

  • 命令行

以可视化的方式创建虚拟环境,先点击左下角的Create按钮,在弹出的对话框中选择Python版本,点击Create按钮即可,如下:

在这里插入图片描述

除此之外,也支持命令的方式创建虚拟环境:

#1.通过命令行创建虚拟环境
#查看虚拟环境
conda env list#创建虚拟环境
conda create -n 虚拟环境名字 python=python版本#激活虚拟环境(进入虚拟环境)
conda activate 虚拟环境名字#禁用虚拟环境(退出虚拟环境)
conda deactivate 虚拟环境名字#删除虚拟环境
conda remove -n 虚拟环境名字 --all

备注:在本阶段课程中,我们使用默认的base环境即可。

【实现】NoteBook的介绍及启动

  • 目标:实现NoteBook的介绍及安装

  • 实施

    • 介绍

      • 问题1:什么是jupyter notebook?

        在这里插入图片描述

        • 官方说

          Jupyter Notebook是一个开源Web应用程序,允许用户创建和共享包含实时代码,方程式,可视化和叙述文本的文档。用途包括:数据清理和转换,数值模拟,统计建模,数据可视化,机器学习等等
          
        • 网友说

          Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示的程序。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释
          
        • 效果图

          在这里插入图片描述

      • 问题2:为什么要用Jupyter notebook?

        • Jupyter notebook不仅功能全面而且更加方便、简洁、高效
        • 方便:jupyter Notebook通过把所有和软件编写有关的资源全部放在一个地方。当打开一个jupyter notebook时,可以看到相应的文档、图表和相应的代码,为需要切换窗口找资料,会很方便的获得项目的所有信息
        • 简洁:引进了Cell的概念,每次实验可以跑一个小Cell里的代码,并且,在代码的下面立刻可以看到结果。很强的互动性,为被繁杂的工具链所累,不用在命令行直接切换,所有科研工具可以jupyter上完成
        • 高效:用 Jupyter Notebook,运行一遍代码以后变量占用的内存不会自动释放。模型加载的所有数据都在内存里,不覆盖变量就不需要重跑 ,因此只需将代码分段执行,灵活调整参数
    • 安装:免安装,已经在Anaconda中自带了。

    • 启动

#1.可以不执行(默认在base环境)
conda activate 虚拟环境名字#2.输入命令
jupyter notebook
  • 小结:实现NoteBook的介绍及安装

【掌握】NoteBook的界面及使用

  • 目标:掌握NoteBook的界面及使用

  • 实施

    • 创建目录

      在这里插入图片描述

在这里插入图片描述

  • 创建Python文件

    在这里插入图片描述

  • 修改文件名字

    在这里插入图片描述

  • 编写代码

    在这里插入图片描述

  • 常用快捷键

    • 模式划分

      • 命令模式:可以用于执行单元格的操作命令

      • 编辑模式:可以对单元格中的内容进行编辑

      • 区分方式:看右上角的信任旁边是否有一个铅笔图案,有就是编辑模式,或者看选中框的颜色,绿色就是编辑模式,蓝色就是命令模式

      • 切换:命令模式下鼠标点入任何单元格中就进入编辑模式,编辑模式下按esc进入命令模式

    • 通用操作

      • Shift+Enter:执行本单元代码,并跳转到下一单元格
      • Ctrl+Enter:执行本单元代码,留在本单元格
    • 命令模式

      • A:在当前cell的上面添加cell
      • B:在当前cell的下面添加cell
      • dd:删除当前cell
      • Y:cell切换到Code模式
      • M:cell切换到Markdown模式
    • 编辑模式

      • 多光标操作/列式编辑:Ctrl键点击鼠标(Mac:CMD+点击鼠标)
      • 回退:Ctrl+Z(Mac:CMD+Z)
      • 重做:Ctrl+Y(Mac:CMD+Y)
      • 补全代码:变量、方法后跟Tab键
      • 为一行或多行代码添加/取消注释:Ctrl+/(Mac: CMD+/)
  • 小结:掌握NoteBook的界面及使用

【模块二:Pandas基础:Series】

【掌握】Pandas基础:数据概念介绍

  • 目标:掌握Pandas基础:数据概念介绍

  • 实施

    • 问题1:Pandas怎么读取数据?

      • step1:新建项目,在项目中新建data和 day01文件夹

      • step2:上传今日资料中数据文件到 data文件夹中

      • step3:上传代码中《Python数据分析_Pandas入门.ipynb》到 day01文件夹中

      • step4:使用 Pandas 读取数据 《1、1960-2019全球GDP数据.csv》

        # 导入 pandas
        import pandas as pd# 读取 文件
        input_df = pd.read_csv('../data/1、1960-2019全球GDP数据.csv', encoding='gbk')# 打印 输出
        input_df
        
    • 问题2:Pands读取到的数据是什么格式的?

      在这里插入图片描述

      • DataFrame:用于Pandas中存储结构化数据的对象,可以理解为类似于**表的概念**,由多行或者多列数据组成
        • DataFrame 是一个二维标记数据结构,类似于电子表格或 SQL 表,其中每一列可以是不同的数据类型(整数、浮点数、字符串等)。
        • DataFrame 可以被看作是由多个 Series 对象组成的集合。每个 Series 共享相同的索引。
      • Series:用于Pandas中存储行列数据的对象,可以理解为**类似于列的概念**
        • Series 是一种一维标记数组,类似于Python中的列表或者一维数组。
        • 每个 Series 都有一个与之相关联的索引。默认情况下,这是从 0 到 N-1 的整数序列。

      在这里插入图片描述

  • 小结:掌握Pandas基础:数据概念介绍

【理解】Pandas基础:Series的创建

  • 目标:理解Pandas基础:Series的创建

  • 实施

    • 概念:Series也是Pandas中的最基本的数据结构对象,简称s对象,是DF的列对象或者行对象,Series本身也具有行索引。

      • values:一组包含N个值的数据,可以理解为数组中的值
      • index:行索引,如果没有为数据指定索引,于是会自动创建一个0到N-1的整数型索引,可以理解为数组的下标
    • 创建方式一:通过List列表

      # 创建s1, 值为 banana和42,不同类型
      s1 = pd.Series(['banana', 42])
      print(s1)# 创建s2, 值为 banana和apple,字符串类型
      s2 = pd.Series(['banana', 'apple'])
      print(s2)# 创建s3, 值为 50和42,数值类型
      s3 = pd.Series([50, 42])
      print(s3)# 创建s4, 值为 小明和男,字符串类型
      s4 = pd.Series(['小明', '男'])
      print(s4)# 修改s4, 值为 小明和男,字符串类型,并指定索引值为Name和Gender
      s4 = pd.Series(['小明', '男'], index=['Name', 'Gender'])
      print(s4)
      

      在这里插入图片描述
      在这里插入图片描述

    • 创建方式二:通过Dict字典或Tuple元组

      # 创建s5, 定义一个tuple
      tuple1 = (1, 2, 3)
      s5 = pd.Series(tuple1)
      print(s5)# 创建s6,定义一个字典 字典中的key值是Series对象的索引值, value值是Series对象的数据值dict1 = {'A': 1, 'B': 2, 'C': 3}
      s6 = pd.Series(dict1)
      print(s6)
      
  • 小结:理解Pandas基础:Series的创建

#1.Series的创建可以有:
(1)列表:
默认index从0开始,可以通过index参数指定。(2)元祖:
默认index从0开始,可以通过index参数指定。(3)字典:
key就是index,value就是属性值。

【理解】Pandas基础:Series的属性和方法

  • 目标:理解Pandas基础:Series的属性和方法

  • 实施

    • Series常见属性

      属性说明
      dtype或dtypesSeries内容的类型
      TSeries的转置矩阵
      shape数据的维度
      sizeSeries中元素的数量
      valuesSeries的值
      indexSeries的索引
# 创建ss1对象
ss1 = pd.Series(data=[1, 2, 3, 4, 2, 3], index=['A', 'B', 'C', 'D', 'E', 'F'])
print(ss1)# 查看对象数据类型
print("ss1的元素的类型:", ss1.dtypes)
print("ss1的元素的类型:", ss1.dtype)# 查看转置后的效果
print("ss1的元素的转置:")
print(ss1.T)# 查看对象维度, 返回一个单个元素的元组, 元素个数代表维度数, 元素值代表值数量
print("ss1的元素的形状:", ss1.shape)# 查看对象值数量
print("ss1的元素的个数:", ss1.size)# 获取对象的数据值, 返回numpy的ndarray数组类型
print("ss1的元素的值:", ss1.values)# 获取对象的索引
print("ss1的元素的索引:", ss1.index)

在这里插入图片描述

在这里插入图片描述

  • Series常用方法

    方法说明
    append连接两个或多个Series
    corr计算与另一个Series的相关系数
    describe计算常见统计量
    drop_duplicates返回去重之后的Series
    equals判断两个Series是否相同
    get_values获取Series的值,作用与values属性相同
    hist绘制直方图
    isinSeries中是否包含某些值
    min返回最小值
    max返回最大值
    mean返回平均值
    median返回中位数
    mode返回众数
    quantile返回指定位置的分位数
    replace用指定值代替Series中的值
    sample返回Series的随机采样值
    sort_values对值进行排序
    to_frame把Series转换为DataFrame
    unique去重返回数组
    value_counts统计不同值数量
    keys获取索引值
    head查看前5个值
    tail查看后5个值
# 查看ss1对象值数量
print(len(ss1))# 查看ss1对象前5个值, n默认等于5
print(ss1.head())
print(ss1.head(n=5))# 查看ss1对象后5个值, n默认等于5
print(ss1.tail())
print(ss1.tail(n=5))# 获取ss1对象的索引
print(ss1.keys())# ss1对象转换成python列表
print(ss1.tolist())
print(ss1.to_list())# ss1对象转换成df对象
print(ss1.to_frame())# ss1对象中数据的基础统计信息
print(ss1.describe())# ss1对象最大值、最小值、平均值、求和值...
print(ss1.max())
print(ss1.min())
print(ss1.mean())
print(ss1.sum())# ss1对象数据值去重, 返回s对象
print(ss1.drop_duplicates())# ss1对象数据值去重, 返回数组
print(ss1.unique())# ss1对象数据值排序, 默认升序
print(ss1.sort_values(ascending=True))# ss1对象索引值排序, 默认升序
print(ss1.sort_index(ascending=False))# ss1对象不同值的数量, 类似于分组计数操作
print(ss1.value_counts())
  • 小结:理解Pandas基础:Series的属性和方法

【理解】Pandas基础:布尔索引及运算

  • 目标:理解Pandas基础:布尔索引及运算

  • 实施

    • 布尔索引过滤

      • 需求:查询出年龄高于平均年龄的年龄信息

      • step1:加载数据

        # 加载数据
        df = pd.read_csv('../data/2、scientists.csv')
        print(df)
        

        在这里插入图片描述

      • step2:取出年龄列,并获取平均年龄

        # 取出年龄列
        ages = df['Age']
        print(ages)# 获取年龄的平均值
        avg_age = ages.mean()
        print(avg_age)
        

        在这里插入图片描述

      • step3:手动定义bool列表,获取高于平均年龄的数据及其索引

        # 手动定义一个bool类型的列表
        bool_list = [False, True, True, True, False, False, False, True]# 对Series进行筛选
        ages[bool_list]
        

        在这里插入图片描述

      • step4:通过表达式来过滤,获取高于平均年龄的数据及其索引

        # 通过表达式构建bool_list
        bool_list = list(ages > avg_age)
        print(bool_list)# 对Series进行筛选
        ages[bool_list]
        

        在这里插入图片描述

      结论:

      布尔值=True,数据会被过滤出来(留下)。
      布尔值=False,数据会被过滤掉。
      
    • Series运算

      • 与数值运算:Series和数值型变量计算时,变量会与Series中的每个元素逐一进行计算

        # 原始
        print(ages)# 加法
        print(ages + 10)# 乘法
        print(ages * 2)
        

        在这里插入图片描述

      • 与Series运算:两个Series之间计算时,索引值相同的元素之间会进行计算;索引值不同的元素的计算结果会用NaN值(缺失值)填充

        # 原始
        print(ages)# 索引相同运算
        print(ages + ages)
        print('=' * 20)# 构建一个Series,两行
        print(pd.Series([1, 100]))
        print('=' * 20)# 索引不相同运算
        print(ages + pd.Series([1, 100]))
        

        在这里插入图片描述

  • 小结:Pandas基础:布尔索引及运算

Series:只是一列数据,没有列名。Series + 列名 = DataFrame。

【模块三:Pandas基础:DataFrame】

【掌握】Pandas基础:DataFrame的创建

DataFrame=二维表,二维表就是由行和列组成。行或者列就是Series。

  • 目标:掌握Pandas基础:DataFrame的创建

  • 实施

    • 概念:DataFrame是一个表格型的结构化数据结构,它含有一组或多组有序的列(Series),每列可以是不同的值类型数

      • DataFrame是Pandas中的最基本的数据结构对象,简称df,可以认为df就是一个二维数据表,这个表有行有列有索引
      • DataFrame是Pandas中最基本的数据结构,Series的许多属性和方法在DataFrame中也一样适用
    • 创建方式一:读取文件

      # 方式一:读取文件
      df = pd.read_csv('../data/2、scientists.csv')
      print(df)
      
    • 创建方式二:Series转换

      # 方式二:Series转换
      df = ages.to_frame()
      print(df)
      

      在这里插入图片描述
      在这里插入图片描述

    • 创建方式三:列表List、元组Tuple、字典Dict

      • 字典

        # 方式三:字典
        # 定义一个字典
        dict_data = {'id': [1, 2, 3],'name': ['张三', '李四', '王五'],'age': [18, 20, 22]
        }# 创建df, 字典中的key值是df对象的列名,value值是对应列的数据值
        df_dict_1 = pd.DataFrame(data=dict_data)
        print(df_dict_1)# 通过index参数指定索引, columns参数指定列的位置
        df_dict_2 = pd.DataFrame(data=dict_data, index=['A', 'B', 'C'], columns=['id', 'age', 'name'])
        print(df_dict_2)
        

        在这里插入图片描述

      • 列表/元祖

        # 方式三:列表
        # 定义一个列表/元组
        list_data = [(1, '张三', 18),(2, '李四', 20),(3, '王五', 22)]# 创建df,指定行标签和列标签
        df_list = pd.DataFrame(data=list_data,index=['A', 'B', 'C'],  # 手动指定索引columns=['id', 'name', 'age'])  # 手动指定列名
        print(df_list)
        

        在这里插入图片描述

  • 小结:掌握Pandas基础:DataFrame的创建

#1.DataFrame的创建方式有三种:
(1)读取文件/excel/数据库(必须掌握)
(2)Series转换(仅做了解)
(3)根据容器创建列表元祖字典(必须掌握)

【掌握】Pandas基础:DataFrame的属性和方法

  • 目标:掌握Pandas基础:DataFrame的属性和方法

  • 实施

    • DataFrame常见属性

      # 加载数据集, 得到df对象
      df = pd.read_csv('../data/2、scientists.csv')# 查看维度, 返回元组类型 -> (行数, 列数), 元素个数代表维度数
      print(df.shape)# 查看数据值个数, 行数*列数, NaN值也算
      print(df.size)# 查看数据值, 返回numpy的ndarray类型
      print(df.values)# 查看维度数
      print(df.ndim)# 返回列名和列数据类型
      print(df.dtypes)# 查看索引值, 返回索引值对象
      print(df.index)# 查看列名, 返回列名对象
      print(df.columns)
      
    • DataFrame常用方法

      # 查看前5行数据
      print(df.head())# 查看后5行数据
      print(df.tail())# 查看df的基本信息
      df.info()# 查看df对象中所有数值列的描述统计信息
      print(df.describe())# 查看df的行数
      print(len(df))# 查看df各列的最小值
      print(df.min())# 查看df各列的非空值个数
      print(df.count())# 查看df数值列的平均值
      print(df.mean())
      
  • 小结:掌握Pandas基础:DataFrame的属性和方法

#1.DataFrame属性小结:
结论:columns属性只有在DataFrame中才有。#2.DataFrame常见的方法:
head()
info()
describe()
len()#3.DataFrame方法小结:
结论:info方法只有在DataFrame中才有。

【理解】Pandas基础:DataFrame的运算

  • 目标:理解Pandas基础:DataFrame的运算

  • 实施

    • 布尔索引过滤

      # 需求:获取年龄大于平均年龄的数据
      # 获取bool列表
      bool_list = df['Age'] > df['Age'].mean()
      print(bool_list)# 筛选数据
      print(df[bool_list])# 合并
      print(df[df['Age'] > df['Age'].mean()])
      

      在这里插入图片描述

    • DataFrame运算

      • DataFrame和数值型变量计算时,变量会与DataFrame中的每个元素逐一进行计算,但df中存在非数值类型列时不能进行加减除运算

        # 数值型变量计算
        # 加载数据集, 得到df对象
        df = pd.read_csv('../data/2、scientists.csv')
        print(df)
        print(df * 2)
        

        在这里插入图片描述

      • 两个DataFrame之间、以及df和s对象进行计算时,索引值相同的行之间会进行计算;索引值不同的行的计算结果会用NaN值(缺失值)填充。

        # DataFrame之间运算
        # 行相同:复制(非数值列)或者计算(数值列)
        print(df + df) # 行不同:做匹配(join的操作)
        df2 = df[df.index.isin(values=[0, 2, 4])]
        print(df2)
        print(df + df2)
        

        在这里插入图片描述

  • 小结:理解Pandas基础:DataFrame的运算

#1.DataFrame的运算和Series类似,布尔值和四则运算。
布尔值过滤必须掌握。
四则运算仅做了解。

【模块四:Pandas基础:位置查询】

【掌握】行列读写基本概念

  • 目标掌握行列读写处理操作

  • 实施

    • **问题:DataFrame是一张表,怎么从表中读写数据? **行标签、列标签、行编号、列编号

      # 读取数据
      China = pd.read_csv('../data/3、China.tsv', sep='\t')
      China
      
    • 行标签【行号】和列标签【列名】

      • 行标签:就是DataFrame中每一行的行号,默认从0开始编号的数值
      • 列标签:就是DataFrame中每一列的列名,默认就是列名

      • 获取DataFrame中的行标签和列标签

        # 获取行标签:默认是数值,从0开始编号
        China.index
        # 获取列标签
        China.columns
        

        在这里插入图片描述

    • 位置编号:二维列表的下标

      • 行位置编号【行号】:从上到下,第1行编号为0,第二行编号为1,…,第n行编号为n-1

      • 列位置编号【列号】:从左到右,第1列编号为0,第二列编号为1,…,第n列编号为n-1

  • 小结:掌握行列读写概念

DataFrame中,行可以称为索引或者标签,列也是如此。
默认行是以索引来显示的。
默认列是显示的标签。

【实现】行列读写操作loc函数

  • 目标实现行列读写基本操作loc函数

  • 实施

    • 功能:通过行列标签获取DataFrame指定行列的数据

    • 语法

      #loc:location,标签位置
      #iloc:index location,索引位置loc[ [行标签] , [列标签] ]     # 获取哪些行的哪些列的数据
      
    • 示例

      #示例1:获取行标签为 0, 1, 6 行的 country、pop、gdpPercap 列的数据
      China.loc[[0, 1, 6], ['country', 'pop', 'gdpPercap']]
      

      在这里插入图片描述

      #示例2:获取行标签为 0, 1, 6 行的所有列的数据
      China.loc[[0, 1, 6]]
      

      在这里插入图片描述

      #示例3:获取所有行的 country、pop、gdpPercap 列的数据
      China.loc[:, ['country', 'pop', 'gdpPercap']]
      

      在这里插入图片描述

      #示例4:获取行标签为 7 行的所有列的数据
      China.loc[[7]]
      

      在这里插入图片描述

      #示例5:获取行标签为 7 行的 lifeExp 列的数据
      China.loc[[7], 'lifeExp']
      

      在这里插入图片描述

  • 小结:实现行列读写基本操作

【实现】行列读写操作iloc函数

  • 目标实现行列读写基本操作loc函数

  • 实施

    • iloc函数【index-location】

      • 功能:通过行列位置编号获取DataFrame指定行列的数据

      • 语法

        iloc[ [行的位置] , [列的位置] ]     # 获取哪些行的哪些列的数据
        
      • 示例

        # 示例1:获取行位置为 0, 2, 4 行的 0、1、2 列的数据
        China.iloc[[0, 2, 4], [0, 1, 2]]
        

        在这里插入图片描述

        # 示例2:获取行位置为 0, 2, 4 行的所有列的数据
        China.iloc[[0, 2, 4]]
        

        在这里插入图片描述

        # 示例3:获取所有行的列位置为 0、1、2 列的数据
        China.iloc[:, [0, 1, 2]]
        

        在这里插入图片描述

        # 示例4:获取行位置为 1 行的所有列的数据
        China.iloc[[1]]
        

        在这里插入图片描述

        # 示例5:获取行位置为 1 行的列位置为 2 列的数据
        China.iloc[1, 2]
        

        在这里插入图片描述

    • loc和iloc的切片操作

      • 功能:通过loc或者iloc获取DataFrame中一定范围的行或者列的数据

      • 语法

        loc[起始行标签: 终止行标签, 起始列标签: 终止列标签 ]
        iloc[起始行位置: 终止行位置, 起始列位置: 终止列位置]
        
      • 示例:获取 China 中前三行的前三列的数据,分别使用上面介绍的loc和iloc实现

        # loc行列标签实现:闭区间
        China.loc[0:2, 'country':'year']
        

        在这里插入图片描述

        # iloc行列位置实现:前闭后开
        China.iloc[0:3, 0:3]
        

        在这里插入图片描述

  • 小结:实现行列读写基本操作

#1.loc是用标签进行切片,iloc是用索引进行切片。
标签:可以写列名
索引:只能写数字#2.loc在切片的时候是闭区间。iloc是左闭右开区间。

【实现】行列读写操作[]索引

  • 目标实现行列读写基本操作loc函数

  • 实施

    • [] 语法

      • 功能:通过行位置以及列标签获取DataFrame中的行列数据

      • 语法

        DataFrame['列标签']							  # 获取所有行对应的列:Series
        DataFrame[['列标签']]							  # 获取这一列的所有行:DataFrame
        DataFrame[['列标签1', '列标签2', ...]]			# 获取指定列的所有行:DataFrameDataFrame[起始行位置:结束行位置]                   # 获取对应行的所有列:DataFrame
        DataFrame[起始行位置:结束行位置:步长]       		# 获取对应行的所有列:DataFrame
        
      • 示例

        # 示例1:获取所有行的 country、pop、gdpPercap 列的数据
        China[['country', 'pop', 'gdpPercap']]
        

        在这里插入图片描述

        # 示例2:获取所有行的 pop 列的数据
        China['pop']				# 返回值是Series
        或者
        China[['pop']]				# 返回值是DataFrame
        

        在这里插入图片描述

        # 示例3:获取前三行的数据
        China[0:3]
        

        在这里插入图片描述

        # 示例4:从第一行开始,每隔一行获取一行数据,一共获取3行
        China[0:6:2]
        

        在这里插入图片描述

  • 小结:实现行列读写基本操作

#1.这里的DataFrame的切片没有loc和iloc,就是自身的。#2.切片过程中,索引是左闭右开区间。
关键字:网页设计培训周志_网站设计风格的关键词_东莞seo排名公司_公司建网站多少钱

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: