李翔-大数据技术

Big data technology!

第1章 数据分析概述和环境配置(2025年8月更新)

一.数据分析概述

1.1 数据分析的目的

1.1.1 场景引入

你在淘宝搜索了一双运动鞋,第二天首页就推给你运动袜、护膝、篮球; 你点开抖音看了一段美食视频,接下来全是餐厅推荐和厨房小工具广告。

这不是“平台会读心术”,而是 数据分析 在帮平台做决策。


1.1.2 数据分析的目的(核心)

一句话

数据分析是用数据找规律、看趋势、帮决策。

四大作用

  1. 理解现状 —— 现在发生了什么

  2. 预测未来 —— 接下来可能会发生什么

  3. 优化过程 —— 怎么做更高效

  4. 解决问题 —— 找到问题并改进


1.1.3 电商中的常见应用

应用场景目的简单案例
客户行为分析找出不同用户群体特点高频买家推新品,新用户送优惠
销售预测提前安排生产/备货预测双十一销量,提前进货
营销效果分析找出最有效的广告A/B 测试发现短视频广告转化率最高
推荐系统提升用户购买体验买了手机推荐手机壳
库存管理减少缺货和积压节假日前加热销品库存
客户满意度分析提升服务质量客户嫌包装差 → 改包装
价格优化找到最赚钱的定价节日小幅降价刺激销量


1.1.4 案例展示

案例 1:客户行为分析 某电商发现,新用户常浏览 3-5 个商品后下单,于是针对新用户推“首单立减”,转化率提升 20%。

案例 2:库存管理 某零食品牌分析历史销量,发现每年中秋前夕月饼销量激增,于是提前两个月备货,避免了缺货。


1.1.5 课堂任务

观察任务

  • 打开淘宝或京东,搜索一个你想买的商品,看系统推给你什么推荐?

  • 思考:它是基于“相似用户”还是“相似商品”推荐的?

  • 相似商品推荐:推的是同类产品或同品牌的类似款

    相似用户推荐:推的是买了你这个商品的其他用户还买了什么



1.1.6 本节小结

  • 数据分析的核心是 收集 → 处理 → 分析 → 决策

  • 好的数据分析能让企业在对的时间、用对的方法、做对的事


1.2 数据分析的主要过程

  1. 明确目的:要弄清楚数据收集的内容、数据的范围,以及什么样的信息对解决问题有帮助,以及如何从数据中提取有用的信息。

  2. 收集数据:针对要解决的问题,收集相关的数据。这过程可能需要应用到各种数据收集工具,如问卷调查、在线数据或者合成数据。收集的数据可能以多种形式存在,如文本、数值或图像等。

  3. 数据清理:对收集到的数据进行清理,使其更加准确可靠,并提高数据质量。数据清理包括对缺失值、异常值等数据的处理,以减少分析过程中的干扰因素。

  4. 数据分析:利用现有的计算机软件系统,使用各种分析技巧和方法,对不同阶段准备好的数据进行分析。数据分析的过程可能包括统计分析、假设检验、相关分析等。

  5. 数据呈现:用各种图表、表格等可视化方式呈现数据本身及数据分析的结果,以直观、简明、令人印象深刻的方式帮助用户理解数据和解决问题。常用的图表包括柱状图、折线图、饼状图、热图、云图等。

本教程的内容通常会涵盖步骤(3)、(4)和(5),其中数据分析(4)和数据呈现(5)是本书的重点内容。随着计算机处理数据的能力快速增长,选用一个合适的计算机处理系统是进行数据分析的前提。目前,业界流行的数据处理平台包括基于Python语言的工具。


1.3 Python语言的优点

Python 作为一门广泛使用的编程语言,因其易用性、灵活性和强大的生态系统,使其非常适合用于大数据、人工智能和云计算。以下是具体原因:

1. 大数据

  • 强大的库支持

    • Pandas:Python 中用于数据分析的库。它提供了高效、便捷的数据结构【 DataFrame】和数据分析工具。

    • NumPy:Python 中进行数值计算的库。它提供了高效的数组和矩阵操作,支持大量的数学函数。

    • Matplotlib:Python 中用于数据可视化的库。它可以生成各种静态、动态和交互式的图表。Matplotlib 通常与 NumPy 和 Pandas 一起使用,以便将数据分析的结果进行可视化展示。

  • 生态系统和工具

    • Python 有丰富的数据分析和可视化工具,如 Matplotlib、Seaborn 和 Plotly,方便数据的探索和展示。

    • HadoopHive等大数据技术兼容性好,支持通过API进行数据操作。

2. 人工智能

  • 丰富的机器学习和深度学习框架

    • Scikit-learn:提供简单易用的机器学习算法。

    • TensorFlow 和 Keras:用于构建和训练深度学习模型。

    • PyTorch:灵活且动态的深度学习框架,广受研究人员和开发者欢迎。

  • 社区和文档

    • 拥有庞大的社区支持,丰富的教程和文档,帮助开发者快速上手。

    • 许多顶级的AI研究和项目都基于Python,有助于知识和技术的传播。

3. 云计算

  • 跨平台兼容性

    • Python 具有良好的跨平台支持,能够在不同操作系统上无缝运行,适合在云环境中部署应用。

  • 自动化和脚本编写

    • Python 简洁且易于编写脚本,常用于自动化任务和云端资源管理。

综合优势

  • 易学易用优雅、明确、简单,适合初学者和开发人员快速上手。

  • 灵活性和扩展性:Python 可以与其他语言(如C、C++、Java)互操作,灵活性高,适应各种应用场景。

  • 丰富的生态系统:庞大的第三方库和框架生态系统,使开发者能够快速构建和部署复杂的应用程序。

这些特点使得 Python 成为大数据、人工智能和云计算领域中的首选编程语言之一,广泛应用于各行各业。


1.4 Python数据分析核心包

2. Pandas

  • 简介:Pandas 是一个强大的数据处理和分析库,提供了高效的数据结构(如DataFrame)和丰富的数据操作功能。

  • 特点

    • 高效的数据读取和写入(支持CSV、Excel、SQL等格式)。

    • 强大的数据清洗和处理功能(如缺失值处理、数据过滤、数据聚合等)。

    • 灵活的数据操作(如合并、重塑、分组等)。

3. NumPy

  • 简介:NumPy 是一个支持大型多维数组和矩阵运算的库,提供了丰富的数学函数库。

  • 特点

    • 高效的数值计算,适合处理大规模数据。

    • 与Pandas和其他科学计算库无缝集成。

    • 广泛应用于数值分析、科学计算和机器学习。

4. Matplotlib

  • 简介:Matplotlib 是一个用于创建静态、动态和交互式可视化的绘图库。

  • 特点

    • 丰富的图表类型(如折线图、柱状图、散点图、饼图等)。

    • 高度可定制的绘图功能。

    • 与Pandas、NumPy等数据分析库紧密结合。

5. Scikit-learn  /ˈsaɪˌkɪt lɜrn/

  • 简介:Scikit-learn 是一个用于数据挖掘和数据分析的机器学习库

  • 特点

    • 提供简单易用的机器学习算法和模型。

    • 与Pandas、NumPy等数据分析库无缝集成。

    • 应用场景:信用评分、疾病预测、市场营销分析等。常用于结构化数据(如表格数据)分析

6. TensorFlow 和 PyTorch

  • 简介TensorFlowPyTorch 是两个广泛使用的深度学习框架

  • 特点

    • 提供强大的深度学习模型构建和训练功能。

    • 应用场景:适用于处理非结构化数据(如图像、音频、文本)的问题,如完成图像识别、语音识别、自然语言处理、自动驾驶等复杂任务。

这些Python数据分析平台工具互补且兼容,可以帮助用户高效地进行数据分析、建模和可视化工作。根据具体需求选择合适的平台和工具,可以显著提高数据分析的效率和效果。


1.5 Python数据分析平台介绍

Python数据分析平台是指用于收集、处理、分析和可视化数据的各种工具和框架。这些平台广泛应用于科学研究、商业分析、机器学习等领域。以下是一些常用的Python数据分析平台及其介绍:

1. Jupyter Notebook

  • 简介Jupyter Notebook 是一个开源的交互式计算环境

  • 特点

    • 支持多种编程语言(Jupyter由Julia、Python、R三种语言组合)。

    • 直观的代码和结果展示,一个文档中同时编写代码、文本、公式和图表。这使得代码的功能、思路和执行结果可以一目了然地展示出来。

2.集成开发环境

PyCharm

  • 简介:PyCharm 是 一款专业 Python 集成开发环境,提供了全面的工具集,适合 Python 开发和数据分析。

  • 特点:

    • 强大的代码编辑和导航功能,支持代码补全、重构和调试。

    • 集成了版本控制系统(如Git),方便团队协作。

    • 提供科学模式,专为数据科学和分析工作设计,内置 Jupyter Notebook 支持。

Visual Studio Code (VSCode)

  • 简介:VSCode 是 Microsoft 开发的一款轻量级但功能强大的代码编辑器,支持多种编程语言和扩展。

  • 特点:

    • 丰富的扩展库,可以通过安装扩展实现对 Python、Jupyter Notebook 等的支持。

    • 灵活的集成终端和调试工具,支持多种开发工作流。

    • 强大的代码编辑功能,支持代码补全、语法高亮和代码片段管理。


二.Jupyter Notebook介绍

1.1 Jupyter Notebook 是什么?

Jupyter Notebook 是一种 基于 Web 的交互式计算环境,广泛应用于数据分析、机器学习、科学计算和数据可视化等领域。它支持多种编程语言,包括 Python、R、Julia 等。

简而言之,Jupyter Notebook 以网页的形式打开,允许用户在页面中 直接编写代码、运行代码,并在代码单元下方实时显示运行结果,极大地提升了编程的交互性与可视化能力。

1.2 主要功能

  1. 代码编写与执行:支持多种编程语言,如Python、R等。

  2. 文本与文档:支持 Markdown 格式的文本,便于编写说明和文档。

  3. 可视化:能够将代码、文本、数学方程式、可视化和其他相关元素组合在一起。

  4. 交互式界面:提供一个交互式的界面,使用户能够以增量和可视化的方式构建和执行代码。

1.3 应用领域

  1. 数据分析:通过代码和可视化相结合的方式进行数据探索和分析。

  2. 机器学习:构建和训练机器学习模型,进行模型评估和可视化。

  3. 科学计算:用于科学研究和计算任务,编写和运行复杂的计算程序。

  4. 数据可视化:创建动态和交互式的可视化图表和图形。

1.4 优势

  • 集成性:将代码、文本、数学方程式、可视化和其他相关元素整合在一起,创建一个动态文档。

  • 增量开发:支持逐步编写和执行代码,便于调试和开发。

  • 可视化:通过可视化图表和图形,直观展示数据和结果。

  • 互动性:用户可以交互式地运行代码和查看结果,提高开发效率。


三. Jupyter Notebook安装方法

3.1 利用Anaconda安装Jupyter Notebook

image-20240728103547152


未标题-1

Anaconda是一个用于数据科学和机器学习的开源 Python 发行版包含了许多常用的数据处理和分析工具包。它提供了 Python 语言的编译器,并集成了众多的库和框架,使得数据科学工作更加便捷和高效。

  1. 提供了 Python 语言的编译器。

  2. 包括 Jupyter Notebook  交互工具

  3. 专为数据科学和机器学习设计。

  4. 集成了众多科学计算、数据处理和机器学习的库和工具。

  5. 使用户能够方便地进行数据分析和开发工作。

推荐以下用户安装:

  • 需要完整数据科学工具包:如果您不仅需要Jupyter Notebook,还需要安装和使用多个数据科学和机器学习工具(如Pandas、NumPy、Matplotlib等),Anaconda包含了这些常用的科学计算包及其依赖项,使用起来非常方便。

  • 希望简化安装和管理:Anaconda提供了图形化界面(Anaconda Navigator)和命令行工具(conda),可以轻松创建和管理虚拟环境,安装和更新包。

  • 对Python新手:如果您是Python新手,Anaconda可以帮助您避免许多常见的安装和配置问题。


3.1.1 windows 系统安装Anaconda

(1) 下载适用于 Windows 的 Anaconda 安装包。

地址1:Anaconda 官网https://repo.anaconda.com/archive/

地址2:清华大学开源软件镜像站https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/推荐下载

image-20250727102156507


(2) 双击安装包进行安装

点击next

image-20250727102256298


点击I Agree

image-20240720160542934


点击Just Me

image-20240720160512399


设置安装的目录(建议放在除c盘外的磁盘,最好创建一个新文件夹,不要使用中文目录)

image-20240720160436842


勾选前三个,第二个勾选表示加入环境变量

image-20240720160941990

说明:

Create shortcuts:生成 Anaconda 快捷方式,方便启动。【建议勾选】

Add to PATH:让 CMD/PowerShell 直接用 Anaconda,但容易和其他 Python 冲突。

Register as default:让 IDE 等软件自动识别 Anaconda 的 Python 3.12。【建议勾选】

Clear cache:安装后清理缓存文件,释放磁盘空间。


点击install,后面一路next并等待安装。 这两个都别勾,点finish就完成啦

image-20240720161418362


此时打开cmd命令行,输入

conda --version

若显示版本信息,说明安装成功啦

image-20240720161518716


(3) 配置Conda 下载源为国内镜像源 (继续在Anaconda Prompt命令行中输入下面命令配置为清华源):

conda:一个 通用包与环境管理工具,既能装 Python 库,也能管理 Python 版本和虚拟环境。

将 Conda 下载源更换为清华大学镜像源,加快包下载与更新速度,适合国内使用。

# 1.清理旧的源 channels 配置(可选,但推荐)
conda config --remove-key channels       # 删除之前自定义源 channels
# 如果之前没配置过,即使提示不存在也没关系。即出现下面的报错忽略即可
# CondaKeyError: 'channels':key 'channels' is not in the config file

# 2.添加清华大学镜像源
# 【推荐以下顺序:1.main仓库(常用核心包);2.free仓库(老版本包);3.conda-forge社区仓库(更多第三方包)】
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge

# 3.严格按上面的优先级下载包,避免多个源混用,保证环境一致性。
conda config --set channel_priority strict

# 4.查看当前 Conda 配置文件中启用的下载源(channels)列表,以及它们的优先级顺序。
conda config --show channels

# 5.让 Conda 在安装/更新包时显示下载源地址(方便确认是否使用的是清华源)
conda config --set show_channel_urls yes


(4) 配置 pip 下载源为国内镜像源

pip:Python 自带的 包管理工具,专门用来安装和管理 Python 的第三方库。

将 pip 下载源更换为清华大学镜像源,加快包下载与更新速度,适合国内使用。

# 设置 pip 默认源为清华镜像
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 将清华源域名加入信任主机,避免 SSL 报错
pip config set global.trusted-host pypi.tuna.tsinghua.edu.cn
# 设置 pip 超时时间为 6000 秒,防止网络慢时中断
pip config set global.timeout 6000


pip 与 conda 对比表

对比项pipconda
定义Python 官方的包管理工具Anaconda 提供的包与环境管理工具
管理对象只管理 Python 包(来自 PyPI)可管理 任何语言的包(Python、R、C 库等),还能管理 环境
安装来源PyPI(Python Package Index)Anaconda 镜像库(conda-forge、清华源等),也能用 pip 安装
环境管理不支持,需要配合 venv/virtualenv内置支持,能创建隔离环境 conda create -n env_name python=3.9
依赖处理只管 Python 依赖,复杂依赖容易冲突会自动解决多语言依赖(如 numpy + MKL 库),更稳定
适用场景只用 Python,轻量化项目做数据分析、大数据、AI/机器学习,需要复杂依赖和环境管理
典型命令pip install numpyconda install numpy / conda create -n py39 python=3.9


(5) 安装完成后,运行应用程序Anaconda Navigator【图形用户界面】

即在Windows操作系统中,可以在开始菜单中找到Anaconda Navigator应用程序的快捷方式,点击打开即可。 打开后可以看到这样的界面就成功啦++2.

在这里插入图片描述


3.1.2  启动Jupyter Notebook【推荐此方法启动】

1. 打开 Anaconda Prompt

1.Anaconda Prompt 是 Anaconda 自带的命令行工具,专用于管理环境、包和运行 Notebook。

2.启动目录即为 Notebook 的默认工作目录,所有 .ipynb 文件和数据文件都将在该目录下创建或保存;

3.命令行前会显示 (base) 提示:(base) C:\Users\你的用户名>

  • 表示:Anaconda 的根环境(base 环境) 已自动激活。

  • 该环境包含 Python、conda、pip、jupyter 等基础组件;

4.可以在命令行模式中输入 !cd显示当前的工作目录路径


2. 创建并切换到班级对应的工作目录(注意路径不要含中文和空格)

# 先在D盘创建各班的目录
# 大数据 24-1 班工作目录
cd d:/bigdata1

# 大数据 24-2 班工作目录
cd d:/bigdata2

# 大数据 24-3 班工作目录
cd d:/bigdata3

3. 启动 Jupyter Notebook

jupyter notebook

系统会自动打开浏览器,进入该目录下的 Notebook 文件管理界面。



四.Jupyter Notebook使用入门

4.1 启动Jupyter Notebook

步骤:

  1. 打开 Anaconda Prompt

    • Anaconda Prompt 是由 Anaconda 提供的命令行工具,专门用于管理 Anaconda 环境和包。

    • image-20240723185925401

  2. 切换目录到 d:/bigdata


    • image-20240723185950919

  3. 启动 Jupyter notebook

    jupyter notebook

特点

  • 默认使用 Anaconda 管理的 Python 环境,这可以包括 base 环境或任何激活的 conda 环境。

  • 更方便管理不同的 Python 环境和包,可以轻松地激活、切换和管理不同的 conda 环境。

  • 在启动 Anaconda Prompt 时,可以自动激活 base 环境,或者你可以手动激活其他环境:


4.2 创建或选择Jupyter文件

image-20240902190704985


4.3 Jupyter 工作界面

image-20240719120201673


image-20240719120011804


4.4 Jupyter 常用命令

快捷键功能快捷键功能
Tab代码补全或者缩进Alt+Enter运行本单元,在下面插入一单元格
Shift+Enter运行本单元,选中下一单元格Ctrl+Enter运行本单元
光标上移,或者选中上一单元光标下移,或者选中下一单元格
ESC进入命令模式Enter进入编辑模式


Markdown标题的输入

image-20240719121840417

image-20240719121910424


单元格标题类型切换

  • 1:将当前单元格类型设置为一级标题。

  • 2:将当前单元格类型设置为二级标题。

  • 3:将当前单元格类型设置为三级标题。

  • 4:将当前单元格类型设置为四级标题。

  • 5:将当前单元格类型设置为五级标题。

  • 6:将当前单元格类型设置为六级标题。




发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

版权:李翔
备案/许可证编号为:新ICP备2024006115号-1