大数据—数据分析概论
一、什么是数据分析
数据分析是指使用统计、数学、计算机科学和其他技术手段对数据进行清洗、转换、建模和解释的过程,以提取有用的信息、发现规律、支持决策和解决问题。数据分析可以应用于各种领域,包括商业、医学、工程、社会科学等。
二、数据分析步骤
数据分析的关键步骤包括定义问题和目标、数据收集、数据清洗、数据探索、数据转换和特征工程、数据建模、模型评估和验证、结果解释和报告,以及行动和监控。
1. 定义问题和目标
- 确定问题:明确要解决的问题或要回答的业务问题。
- 设定目标:定义分析的具体目标和期望的结果,如提高销售额、降低成本、优化运营等。
2. 数据收集
- 识别数据源:确定哪些数据源(内部数据库、外部数据源、调查等)可以提供所需数据。
- 收集数据:从各个数据源中提取相关数据。
3. 数据清洗
- 处理缺失值:识别并处理数据中的缺失值,可以选择删除、填补或保留缺失值。
- 处理异常值:识别并处理数据中的异常值,决定是否删除或调整这些值。
- 数据一致性检查:确保数据格式和内容的一致性,如日期格式、单位统一等。
4. 数据探索
- 统计描述:计算数据的基本统计量,如均值、中位数、标准差等。
- 数据可视化:使用图表(如直方图、散点图、箱线图等)探索数据的分布和关系。
- 发现模式和关系:通过可视化和统计方法发现数据中的模式和变量之间的关系。
5. 数据转换和特征工程
- 数据转换:对数据进行必要的转换,如归一化、标准化等。
- 特征提取:从原始数据中提取新的有用特征,提高模型的表现。
- 编码分类变量:将分类变量转换为数值形式,如独热编码(One-Hot Encoding)。
6. 数据建模
- 选择模型:根据分析目标选择适当的建模方法(如回归、分类、聚类等)。
- 训练模型:使用训练数据集构建模型。
- 调参优化:通过交叉验证和超参数调整优化模型性能。
7. 模型评估和验证
- 评估模型:使用测试数据集评估模型的性能,计算评估指标(如准确率、精确率、召回率、F1分数、均方误差等)。
- 验证模型:确保模型的泛化能力,避免过拟合或欠拟合。
8. 结果解释和报告
- 解释结果:解读模型结果,理解模型的预测和发现的规律。
- 生成报告:编写分析报告,使用可视化工具展示关键发现和建议。
- 汇报结果:向决策者和相关利益者汇报分析结果,以支持决策。
9. 行动和监控
- 实施行动:根据分析结果采取相应的业务行动。
- 持续监控:监控实施效果,收集反馈并进行持续优化。
三、数据分析常用的方法
数据分析常用的方法可以根据不同的分析目标和数据类型分为多种。
1. 描述性分析
描述性分析用于总结和描述数据的基本特征,帮助理解数据的分布和趋势。
- 统计描述:均值、中位数、众数、标准差、方差等。
- 数据可视化:直方图、条形图、折线图、散点图、箱线图等。
2. 探索性数据分析(EDA)
探索性数据分析旨在发现数据中的模式、关系和异常,通常是数据分析的初始步骤。
- 分布分析:了解数据的分布情况。
- 相关性分析:使用相关矩阵和散点图查看变量之间的关系。
- 异常值检测:识别数据中的异常值和离群点。
3. 推断性分析
推断性分析通过从样本数据推断总体特征,通常涉及假设检验和置信区间。
- 假设检验:t检验、卡方检验、ANOVA等。
- 置信区间:估计总体参数的范围。
4. 预测性分析
预测性分析用于预测未来的趋势或事件,常用于时间序列分析和回归模型。
- 回归分析:线性回归、逻辑回归、多元回归等。
- 时间序列分析:ARIMA模型、指数平滑法等。
5. 分类和聚类
这些方法用于将数据分组或分类,常用于机器学习和模式识别。
- 分类:决策树、随机森林、支持向量机(SVM)、k近邻(k-NN)、朴素贝叶斯等。
- 聚类:k均值聚类、层次聚类、DBSCAN等。
6. 关联分析
关联分析用于发现数据中变量之间的关联规则,常用于市场篮子分析。
- 关联规则:Apriori算法、FP-Growth算法等。
7. 因果分析
因果分析用于确定变量之间的因果关系,而不仅仅是相关性。
- 随机对照试验(RCT):通过随机分配实验组和对照组来确定因果关系。
- 结构方程模型(SEM):用于复杂变量关系的建模。
8. 文本分析
文本分析用于处理和分析非结构化文本数据。
- 自然语言处理(NLP):分词、词性标注、命名实体识别等。
- 情感分析:分析文本情感倾向(正面、负面、中性)。
- 主题模型:LDA(潜在狄利克雷分配)等。
9. 数据可视化
数据可视化用于直观展示数据和分析结果,帮助理解和决策。
- 静态图表:柱状图、折线图、饼图、热图等。
- 动态图表和仪表盘:交互式图表和仪表盘,常用工具如Tableau、Power BI。
10. 高级分析和机器学习
高级分析和机器学习方法用于复杂数据分析和预测。
- 监督学习:回归、分类等。
- 无监督学习:聚类、降维等。
- 深度学习:神经网络、卷积神经网络(CNN)、循环神经网络(RNN)等。
四、数据建模与算法
在数据分析中,数据建模与算法是关键步骤之一。数据建模通过数学和统计学方法来拟合数据,揭示其内在结构和规律,从而进行预测和决策支持。常用的算法可以分为监督学习和无监督学习,以及其他特定任务的算法。
数据建模步骤
-
定义问题:
- 明确建模目标,如分类、回归、聚类或预测。
-
数据准备:
- 数据清洗:处理缺失值、异常值和重复数据。
- 特征工程:选择和转换特征,包括特征缩放、编码和降维。
-
选择模型:
- 根据问题类型选择适当的算法和模型。
-
训练模型:
- 使用训练数据集构建模型,通过调整参数优化模型性能。
-
模型评估:
- 使用测试数据集评估模型性能,计算评估指标。
-
模型调优:
- 通过交叉验证和超参数调整优化模型。
-
模型部署:
- 将模型应用于实际场景,进行预测和决策支持。
常用的算法
1. 监督学习
用于有标注数据的建模,目标是学习输入特征与目标变量之间的关系。
分类算法:
- 决策树(Decision Tree):
- 基于特征的值将数据分割成不同的子集,形成树状结构。
- 随机森林(Random Forest):
- 由多棵决策树组成的集成模型,通过投票或平均预测结果。
- 支持向量机(SVM):
- 寻找最佳的超平面将不同类别分开,适用于线性和非线性分类。
- k近邻(k-NN):
- 根据样本点的最近邻居进行分类,简单但计算量大。
- 朴素贝叶斯(Naive Bayes):
- 基于贝叶斯定理的概率分类模型,假设特征之间独立。
回归算法:
- 线性回归(Linear Regression):
- 建立输入特征与目标变量之间的线性关系。
- 逻辑回归(Logistic Regression):
- 用于二分类问题,通过sigmoid函数输出概率值。
- 岭回归(Ridge Regression):
- 线性回归的正则化版本,避免过拟合。
- LASSO回归(LASSO Regression):
- 通过L1正则化选择特征,适用于特征较多的场景。
2. 无监督学习
用于无标注数据的建模,目标是揭示数据的内在结构。
聚类算法:
- k均值聚类(k-Means Clustering):
- 将数据分成k个簇,最小化簇内样本点之间的距离。
- 层次聚类(Hierarchical Clustering):
- 通过构建树状层次结构将数据逐级聚类。
- DBSCAN(Density-Based Spatial Clustering of Applications with Noise):
- 基于密度的聚类方法,能够识别噪声点和任意形状的簇。
降维算法:
- 主成分分析(PCA):
- 将高维数据投影到低维空间,最大化数据方差。
- t-SNE(t-Distributed Stochastic Neighbor Embedding):
- 高维数据的非线性降维方法,适用于可视化。
3. 其他算法
关联规则学习:
- Apriori算法:
- 用于发现频繁项集和关联规则,常用于市场篮子分析。
- FP-Growth算法:
- 通过构建频繁模式树发现频繁项集,效率较高。
时间序列分析:
- ARIMA模型(AutoRegressive Integrated Moving Average):
- 结合自回归和移动平均,适用于时间序列预测。
- 指数平滑法(Exponential Smoothing):
- 通过加权平均方法预测时间序列,适用于短期预测。
深度学习:
- 神经网络(Neural Networks):
- 模拟生物神经网络的结构,适用于各种复杂任务。
- 卷积神经网络(CNN):
- 主要用于图像数据处理,通过卷积层提取特征。
- 循环神经网络(RNN):
- 处理序列数据,适用于自然语言处理和时间序列预测。
相关文章:
大数据—数据分析概论
一、什么是数据分析 数据分析是指使用统计、数学、计算机科学和其他技术手段对数据进行清洗、转换、建模和解释的过程,以提取有用的信息、发现规律、支持决策和解决问题。数据分析可以应用于各种领域,包括商业、医学、工程、社会科学等。 二、数据分析步…...
centos7下卸载MySQL,Oracle数据库
📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 操作系统版本为CentOS 7 使⽤ MySQ…...
Spring解决循环依赖
Spring框架为了解决循环依赖问题,设计了一套三级缓存机制: 一级缓存singletonObjects:这个是最常规的缓存,用于存放完成初始化好的bean,如果某个bean已经在这个缓存了直接返回。二级缓存earlySigletonObjects:这个用于存放早期暴…...
RUST运算符重载
在 Rust 中,可以使用特征(traits)来实现运算符重载。运算符重载是通过实现相应的运算符特征(如 Add、Sub、Mul 等)来完成的。这些特征定义在 std::ops 模块中。下面是一个简单的示例,展示如何为一个自定义结…...
描述一下 Array.forEach() 循环和 Array.map() 方法之间的主要区别
Array.forEach() 和 Array.map() 都是 JavaScript 数组中常用的方法,但它们之间有一些重要的区别: 返回值:forEach():没有返回值,它只是对数组中的每个元素执行提供的函数。map():返回一个新的数组,其元素是通过对原数组的每个元素执行提供的函数后的结…...
在GEE中显示矢量或栅格数据的边界(包含样式设计)
需要保证最后显示的数据是一个 FeatureCollection 对象。 如果数据是一个 Geometry 或 Image,我们也可以使用 style 方法来设置样式并将其添加到地图上。以下是针对不同类型对象的处理方式: 1 Geometry对象 如果 table 是一个 Geometry 对象ÿ…...
django使用fetch上传文件
在上一篇文章中,我包装了fetch方法,使其携带cookie。但是之前fetch传递的是json数据,现在有了一个上传文件的需求,因此需要进行修改: const sendRequest (url, method, data) > {const csrftoken Cookies.get(cs…...
linux安装docker步骤
步骤1 脚本自动安装 curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh 步骤2 启动Docker服务: sudo systemctl start docker 步骤3 验证Docker是否正确安装并运行一个容器: sudo docker run hello-world 安装正确,则可拉取镜像&am…...
Unity DOTS技术(一)简介
文章目录 一.概述二.将会介绍的内容三.DOTS技术与传统方式的不同传统问题DOTS技术 四.插件安装 一.概述 传统的游戏开发中,如果有成千上万的物体在场景中运动,那么你一定会认为是疯了.但有了Dost技术这一些都将变成可能.如图场景中有10000个物体在同时运动,帧率即能保持在60Fp…...
深度解读ChatGPT基本原理
一、基本原理 ChatGPT是一个基于深度学习的自然语言生成模型,使用了类似于GPT(Generative Pre-trained Transformer)的架构。GPT是由OpenAI开发的一种语言模型,能够生成与输入文本相关的连续性文本。 ChatGPT的基本原理是先使用…...
python实现——分类类型数据挖掘任务(图形识别分类任务)
分类类型数据挖掘任务 基于卷积神经网络(CNN)的岩石图像分类。有一岩石图片数据集,共300张岩石图片,图片尺寸224x224。岩石种类有砾岩(Conglomerate)、安山岩(Andesite)、花岗岩&am…...
【安卓跨进程通信IPC】-- Binder
目录 BinderBinder是什么?进程空间分配进程隔离Binder跨进程通信机制模型优点AIDL常见面试题 Binder 夯实基础之超详解Android Binder的工作方式与原理以及aidl示例代码 比较详细的介绍:Android跨进程通信:图文详解 Binder机制 原理 操作系统…...
大数据之Schedule调度错误(一)
当我们在利用ooize发起整个任务的调度过程中,如果多个调度任务同时运行并且多个调度任务操作了相同的表,那么就会出现如下的错误关系: Invalid path hdfs://iZh5w01l7f8lnog055cpXXX:8000/user/admin/xxx: No files matching path hdfs://iZh5w01l7f8lnog055cpXXX:8000/user/ad…...
DiffIR论文阅读笔记
ICCV2023的一篇用diffusion模型做Image Restoration的论文,一作是清华的教授,还在NIPS2023上一作发表了Hierarchical Integration Diffusion Model for Realistic Image Deblurring,作者里甚至有Luc Van Gool大佬。模型分三个部分,…...
prometheus+alertmanager+webhook钉钉机器人告警
版本:centos7.9 python3.9.5 alertmanager0.25.0 prometheus2.46.0 安装alertmanager prometheus 配置webhook # 解压: tar -xvf alertmanager-0.25.0.linux-amd64.tar.gz tar -xvf prometheus-2.46.0.linux-amd64.tar.gz mv alertmanager-0.25.0.linu…...
ctfshow 年CTF web
除夕 Notice: Undefined index: year in /var/www/html/index.php on line 16 <?phpinclude "flag.php";$year $_GET[year];if($year2022 && $year1!2023){echo $flag; }else{highlight_file(__FILE__); } 弱比较绕过很简单,连函数都没有直…...
原型链、闭包、手写一个闭包函数、 闭包有哪些优缺点、原型链继承
什么是原型链? 原型链是一种查找规则 为对象成员查找机制提供一个方向 因为构造函数的 prototype 和其实例的 __ proto __ 都是指向原型对象的 所以可以通过__proto__ 查找当前的原型对象有没有该属性, 没有就找原型的原型, 依次类推一直找到Object( null ) 为…...
linux中SSH_ASKPASS全局变量的作用
在工作中遇到一段代码,通过SSH_ASKPASS全局变量实现了ssh登录远程IP时的密码输入,chatgpt搜索了一下,其解释大致如下所示: SSH_ASKPASS 是一个环境变量,它在 SSH 客户端需要用户输入密码时起作用。当 SSH 客户端检测到…...
9 -力扣高频 SQL 50 题(基础版)
9 - 上升的温度 -- 找出与之前(昨天的)日期相比温度更高的所有日期的 id -- DATEDIFF(2007-12-31,2007-12-30); # 1 -- DATEDIFF(2010-12-30,2010-12-31); # -1select w1.id from Weather w1, Weather w2 wheredatediff(w1.recordDate,w2.recordDat…...
TCP的重传机制
TCP 是一个可靠的传输协议,解决了IP层的丢包、乱序、重复等问题。这其中,TCP的重传机制起到重要的作用。 序列号和确认号 之前我们在讲解TCP三次握手时,提到过TCP包头结构,其中有序列号和确认号, 而TCP 实现可靠传输…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)
可以使用Sqliteviz这个网站免费编写sql语句,它能够让用户直接在浏览器内练习SQL的语法,不需要安装任何软件。 链接如下: sqliteviz 注意: 在转写SQL语法时,关键字之间有一个特定的顺序,这个顺序会影响到…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
