【Python数据分析及环境搭建】:教程详解1(第23天)

news2024/11/17 17:33:27

系列文章目录

  1. Python进行数据分析的优势
  2. 常用Python数据分析开源库介绍
  3. 启动Jupyter服务
  4. Jupyter Notebook的使用

文章目录

  • 系列文章目录
  • 前言
    • 学习目标
    • 1. Python进行数据分析的优势
    • 2. 常用Python数据分析开源库介绍
      • 2.1 NumPy
      • 2.2 Pandas
      • 2.3 Matplotlib
      • 2.4 Seaborn
      • 2.5 Sklearn
      • 2.6 Jupyter Notebook
    • 3 启动Jupyter服务
      • 3.1 设置jupyter服务密码
      • 3.2 生成Jupyter配置文件并配置
      • 3.3 启动jupyter
    • 4 Jupyter Notebook的使用
      • 4.1 Jupyter Notebook的界面
      • 4.2 Jupyter Notebook常用快捷键
      • 4.3 Jupyter Notebook中使用Markdown
    • 总结


前言

本教程详解了Python做数据分析的优势,Python数据分析常用开源库,如何启动jupyter notebook,如何使用jupyter notebook。

学习目标

  • 了解Python做数据分析的优势
  • 知道Python数据分析常用开源库
  • 知道如何启动jupyter notebook
  • 知道如何使用jupyter notebook

1. Python进行数据分析的优势

在这里插入图片描述

  • Python作为当下最为流行的编程语言之一,可以独立完成数据分析的各种任务

    • 功能强大,在数据分析领域里有海量开源库,并持续更新

    • 是当下热点——机器学习/深度学习 领域最热门的编程语言

    • 除数据分析领域外,在爬虫,Web开发等领域均有应用

  • 与Excel,PowerBI,Tableau等软件比较

    • Excel有百万行数据限制,PowerBI ,Tableau在处理大数据的时候速度相对较慢

    • Excel,Power BI 和Tableau 需要付费购买授权

    • Python作为热门编程语言,功能远比Excel,PowerBI,Tableau等软件强大

    • Python跨平台,Windows,MacOS,Linux都可以运行

  • 与R语言比较

    • Python在处理海量数据的时候比R语言效率更高
    • Python的工程化能力更强,应用领域更广泛,R专注于统计与数据分析领域
    • Python在非结构化数据(文本,音视频,图像)和深度学习领域比R更具有优势
    • 在数据分析相关开源社区,python相关的内容远多于R语言

2. 常用Python数据分析开源库介绍

2.1 NumPy

  • NumPy(Numerical Python) 是Python数据分析必不可少的第三方库,NumPy的出现一定程度上解决了Python运算性能不佳的问题,同时提供了更加精确的数据类型,使其具备了构造复杂数据类型的能力。
  • 是一个运行速度非常快的数学库,主要用于数组计算,包含:
    • 高性能科学计算和数据分析的基础包
    • ndarray,多维数组,具有矢量(向量)运算能力,快速、节省空间
    • 矩阵运算,无需循环,可完成类似Matlab(商业数学软件)中的矢量运算
    • 用于读写磁盘数据的工具以及用于操作内存映射文件的工具

2.2 Pandas

  • Pandas是一个强大的分析结构化数据的工具集,Pandas丰富的API能够更加灵活、快速的对数据进行清洗处理以及分析

  • Pandas在数据处理上具有独特的优势:

    • 底层是基于NumPy构建的,所以运行速度特别的快
    • 有专门的处理缺失数据的API
    • 具有强大而灵活的分组、聚合、转换功能
  • Pandas利器之==Series==

    • Series是一种类似于一维数据的数据结构
    • 是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即行索引)组成
    • 仅由一组数据也可产生简单的Series对象
  • Pandas利器之==DataFrame==

    • DataFrame是一种表格型的数据结构,既有行索引也有列索引,可以简单的把DataFrame理解为一张数据表

    • 包含有一组或多组有序的列(Series),每列可以是不同的值类型(数值、字符串、布尔型等)

2.3 Matplotlib

  • Matplotlib 是一个功能强大的数据可视化开源Python库
  • Python中使用最多的图形绘图库
  • 可以创建静态,动态和交互式的图表

2.4 Seaborn

  • Seaborn是一个Python数据可视化开源库
  • 建立在matplotlib之上,并集成了pandas的数据结构
  • Seaborn通过更简洁的API来绘制信息更丰富,更具吸引力的图像
  • 面向数据集的API,与Pandas配合使用起来比直接使用Matplotlib更方便

2.5 Sklearn

  • scikit-learn 是基于 Python 语言的机器学习工具
    • 简单高效的数据挖掘和数据分析工具
    • 可供大家在各种环境中重复使用
    • 建立在 NumPy ,SciPy(Scientific Python) 和 matplotlib 上

2.6 Jupyter Notebook

  • Jupyter Notebook是一个开源Web应用程序,使用Jupyter Notebook可以创建和共享
    • 代码
    • 数学公式
    • 可视化图表
    • 笔记文档
  • Jupyter Notebook用途
    • 数据清理和转换
    • 统计分析
    • 数据可视化
    • 机器学习等
  • Jupyter Notebook是数据分析学习和开发的首选开发环境

3 启动Jupyter服务

3.1 设置jupyter服务密码

  • 进入python的命令终端, 在linux终端执行 python 命令

    在这里插入图片描述

  • 输入以下代码设置密码, 记录生成的密码字符串

    from notebook.auth import passwd
    passwd() # 设置自己的密码,然后两次输入确认生成加密字符串, 密码设置为123456即可
    

    在这里插入图片描述

3.2 生成Jupyter配置文件并配置

  • 在linux终端执行以下命令, 生成jupyter_notebook_config.py配置文件

    jupyter notebook --generate-config
    

    在这里插入图片描述

  • 打开jupyter_notebook_config.py配置文件, 在最后添加以下内容即可

    # 打开文件
    vim ~/.jupyter/jupyter_notebook_config.py
    # 添加以下内容
    c.NotebookApp.allow_remote_access = True  #允许远程访问
    c.NotebookApp.allow_root = True          #允许root访问
    c.NotebookApp.ip='*'                     # 所有ip皆可访问  
    c.NotebookApp.password = '上面复制的那个字符串'    
    c.NotebookApp.open_browser = False       # 禁止自动打开浏览器  
    c.NotebookApp.port =8888                 # 端口
    c.NotebookApp.notebook_dir = '/' 
    

    在这里插入图片描述

3.3 启动jupyter

  • linux终端输入 jupyter notebook 命令启动

    jupyter notebook
    

    在这里插入图片描述

  • 在本地浏览器中输入 192.168.88.100:8888, 进入jupyter的web界面
    在这里插入图片描述

    在这里插入图片描述

  • 注意: 不要关闭jupyter服务

    在这里插入图片描述

4 Jupyter Notebook的使用

4.1 Jupyter Notebook的界面

  • 新建notebook文档

    注意:Jupyter Notebook 文档的扩展名为.ipynb,与我们正常熟知的.py后缀不同

    在这里插入图片描述

  • 新建文件之后会打开Notebook界面

    在这里插入图片描述

  • 菜单栏中相关按钮功能介绍:

    Jupyter Notebook的代码的输入框和输出显示的结果都称之为cell,cell行号前的 * ,表示代码正在运行

在这里插入图片描述

4.2 Jupyter Notebook常用快捷键

Jupyter Notebook中分为两种模式:命令模式和编辑模式

  • 两种模式通用快捷键

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

    在这里插入图片描述

    • Y,cell切换到Code模式
    • M,cell切换到Markdown模式
    • A,在当前cell的上面添加cell
    • B,在当前cell的下面添加cell
    • 双击D:删除当前cell
  • 编辑模式:按Enter进入,或鼠标点击代码编辑框体的输入区域

    在这里插入图片描述

    • 撤销:Ctrl+Z(Mac:CMD+Z)
    • 补全代码:变量、方法后跟Tab键
    • 为一行或多行代码添加/取消注释:Ctrl+/(Mac:CMD+/)

4.3 Jupyter Notebook中使用Markdown

  • 在命令模式中,按M即可进入到Markdown编辑模式

  • 使用Markdown语法可以在代码间穿插格式化的文本作为说明文字或笔记

  • Markdown基本语法:标题和缩进

    在这里插入图片描述

  • 效果如下图所示

在这里插入图片描述

总结

  • 了解Python做数据分析的优势

    • Python可以独立高效的完成数据分析相关的全部工作
  • 知道Python数据分析常用开源库

    • Pandas
    • Numpy
    • Matplotlib
    • Seaborn
    • sklearn
  • 会启动和使用jupyter notebook

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1884452.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python 分析nginx的error.log日志 然后写入到 mongodb当中 并且解决mongodb无法根据id删除数据的问题

废话不多说 直接上代码 import re import os import pymongo import uuid import bson def extract_unresolved_info(log_path):unresolved_info []with open(log_path, r) as file:log_text file.read()lines log_text.split("\n")for line in lines:# 这种属于主…

汽车内饰塑料件光照老化实验箱

塑料件光照老化实验箱概述 塑料件光照老化实验箱,又称为氙灯老化试验箱,是一种模拟自然光照条件下塑料材料老化情况的实验设备。它通过内置的氙灯或其他光源,产生接近自然光的紫外线辐射,以此来加速塑料及其他材料的光老化过程。…

Open3D 点云CPD算法配准(粗配准)

目录 一、概述 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2配准后点云 一、概述 在Open3D中,CPD(Coherent Point Drift,一致性点漂移)算法是一种经典的点云配准方法,适用于无序点云的非…

Python番外篇之责任转移:有关于虚拟机编程语言的往事

编程之痛 如果,你像笔者一样,有过学习或者使用汇编语言与C、C等语言的经历,一定对下面所说的痛苦感同身受。 汇编语言 将以二进制表示的一条条CPU的机器指令,以人类可读的方式进行表示。虽然,人类可读了&#xff0c…

Android Studio 2023版本切换DNK版本

选择自己需要的版本下载 根目录下的配置路劲注意切换 build.gradle文件下的ndkVersion也要配好对应版本

【web APIs】快速上手Day03

目录 Web APIs - 第3天全选文本框案例事件流事件捕获事件冒泡阻止冒泡解绑事件on事件方式解绑addEventListener方式解绑 注意事项-鼠标经过事件的区别两种注册事件的区别 事件委托综合案例-tab栏切换改造 其他事件页面加载事件元素滚动事件页面滚动事件-获取位置页面滚动事件-滚…

【java高级】【算法】通过子节点 反向获取 树路径父节点 且不获取无关节点

有一个奇葩需求 要求 用户配置在某选择框的选项 例如 然后在选择时显示 用户配置的选项 依旧是返回树,但是只包含 选择的子节点。 以及涉及的父节点,树路径 不返回无关节点 【一般】我们开发中都是直接通过 树节点 返回 其下子节点 这个需求的确很奇葩。 而且还要考…

生命在于学习——Python人工智能原理(3.1.1)

Python部分结束了,开始概率论部分 一、概率基本知识 1.1 事件与概率 1.1.1 事件的运算与关系 (一)基本概念 定义1 随机试验 如果一个试验满足如下条件: 在试验前不能断定其将发生什么结果,但可明确指出或说明试验…

Python系统教程01

Python 是一门解释性语言,相对更简单、易学,它可以用于解决数学问题、获取与分 析数据、爬虫爬取网络数据、实现复制数学算法等等。 1、print()函数: print()书写时注意所有的符号都是英文符号。print()输出内容时,若要输出字符…

【RabbitMQ问题踩坑】RabbitMQ设置手动ack后,消息队列有多条消息,只能消费一条,就不继续消费了,这是为什么 ?

现象:我发送5条消息到MQ队列中,同时,我在yml中设置的是需要在代码中手动确认,但是我把代码中的手动ack给关闭了,会出现什么情况? yml中配置,配置需要在代码中手动去确认消费者消费消息成功&…

赋能心理大模型,景联文科技推出高质量心理大模型数据库

生成式大模型作为当前发展势头最为强劲的人工智能前沿技术,其在临床心理学领域中的创新应用已成为社会关注和医学聚焦的热点之一。 心理大模型在落地应用过程中可能面临的痛点主要包括以下几个方面: 数据隐私与安全:确保敏感的个人信息在模型…

uniapp微信小程序电子签名

先上效果图,不满意可以直接关闭这页签 新建成单独的组件,然后具体功能引入,具体功能点击签名按钮,把当前功能页面用样式隐藏掉,v-show和v-if也行,然后再把这个组件显示出来。 【签名-撤销】原理是之前绘画时…

全球首款搭载Google Gemini和GPT-4o的智能眼镜发布

智能眼镜仍然是一个尚未完全成熟的未来概念,但生成式人工智能的到来显著提升了这些设备的能力。Meta 的 Ray-Ban 智能眼镜被许多人视为当今最好的选择之一,而现在 Solos AirGo Vision 正在为其带来竞争,这款眼镜还集成了 Google Gemini 支持。…

burpsuite 设置监听窗口 火狐利用插件快速切换代理状态

一、修改burpsuite监听端口 1、首先打开burpsuite,点击Proxy下的Options选项: 2、可以看到默认的监听端口为8080,首先选中我们想要修改的监听,点击Edit进行编辑 3、将端口改为9876,并保存 4、可以看到监听端口修改成功…

JUC基础学习

1.Java JUC简介 2.volatile关键字-内存可见性 3.原子变量-CAS算法 4.ConcurrentHashMap锁分段机制

【Unity Linux】模型导致的Unity项目崩溃

模型需勾选Strip Bones。如不勾选,则开启项目崩溃。 也可以删除有问题模型的.meta文件。 (Unity默认会自动勾选,所以不会崩溃) 或打开.meta文件,将optimizeBones的值,由0改为1。(对应面板上的…

Top 5 免费 PDF 转 Word 转换工具

PDF 是可移植文档格式的缩写,是一种文件格式,用于独立于软件、硬件或操作系统可靠地呈现和交换文档。PDF 不是为编辑而设计的,因此如果您想更改某些内容,可能需要将 PDF 转换为 Word/Doc 转换器。 Top 5 免费 PDF 转 Word 转换工具…

【Python实战因果推断】12_线性回归的不合理效果2

目录 Adjusting with Regression Adjusting with Regression 为了了解回归的威力,让我带您回到最初的例子:估计信贷额度对违约的影响。银行数据通常是这样的,其中有很多列客户特征,这些特征可能表明客户的信贷价值,比…

1972计算机毕业设计asp.net毕业生就业信息管理系统VS开发access数据库web结构c#编程计算机网页源码项目

一、源码特点 asp.net毕业生就业信息管理系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 asp.net毕业生就业信息管理系统 二、功能介绍 基于ASP.NET的毕业生就业信息管理系统主要满足以下几个方面的…

SQL 注入联合查询之为什么要 and 1=2

在 SQL 注入联合查询中,将 id 先置为假(如 id-1 或其他使查询结果为空的条件),通常是为了让前面的查询语句查询不到结果,从而使联合查询中后面的语句结果能够显示在回显位上