R语言数据质量分析

数据质量分析是数据预处理的前提,也是数据分析结论有效性和准确性的基础。
数据质量分析的主要任务是检查原始数据中是否存在脏数据。
脏数据一般包括;

缺失值分析
缺失值产生的原因、影响
原因:
- 部分信息难以获取,或获取的代价太大
- 因人为因素遗漏的、忘记写的、对数据理解错误的等
- 属性值不存在
影响:

缺失值分析
常用函数:
# 结果返回TRUE,FALSE,TRUE为缺失值,FALSE为非缺失值
is.na()
# 结果返回TRUE,FALSE,FALSE为缺失值,TRUE为非缺失值
complete.cases()
# 形成矩阵或数据框式的表格,1和0显示缺失值模式,0表示变量的列中有缺失值,1表示没有
mice包中的md.pattern()
# 图形绘制每个变量的缺失值数,还绘制每个变量组合的缺失值数
aggr()
异常值分析
含义与方法
异常分析式检验数据是否有录入错误以及含有不合常理的数据,异常值也称作离群点。
异常值的分析方法主要有:
- 简单统计量分析
- 3\(\sigma\)原则
- 箱型图分析
质量控制图
qcc包是专业的绘制质量控制图的算法包
# 该函数的基础形式如下
qcc(data,type,nsigmas=3,plot=TRUE,...)
# 以xbar为例绘图图形
library(qcc)
data(pistonrings)
attach(pistonrings)
newdata<-rep(74,30)+rnorm(30)/50
qcc(pistonrings$diameter,type="xbar.one")

箱型图分析

绘制一个简单的箱型图:
library(ggplot2)
# 创建示例数据
set.seed(123) # 设置随机种子以便结果可复现
data <- data.frame(
group = rep(c("A", "B", "C"), each = 200), # 创建三个组
value = c(rnorm(200, mean = 0, sd = 1), # 为组A生成正态分布的随机数
rnorm(200, mean = 3, sd = 2), # 为组B生成正态分布的随机数
rnorm(200, mean = 6, sd = 1.5)) # 为组C生成正态分布的随机数
)
# 查看数据的前几行
head(data)
# 绘制箱型图
p <- ggplot(data, aes(x = group, y = value)) + # 设置数据和映射
geom_boxplot(fill = "lightblue") + # 添加箱型图图层,并设置填充颜色
theme_minimal() + # 使用简洁的主题
labs(title = "箱型图示例", # 添加标题
x = "组别", # x轴标签
y = "值") + # y轴标签
scale_fill_brewer(palette = "Pastel1") # 使用Brewer配色方案
# 显示图形
print(p)

R语言数据质量分析的更多相关文章
- R语言重要数据集分析研究——需要整理分析阐明理念
1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标 ...
- R语言数据接口
R语言数据接口 R语言处理的数据一般从外部导入,因此需要数据接口来读取各种格式化的数据 CSV # 获得data是一个数据帧 data = read.csv("input.csv" ...
- R语言数据预处理
R语言数据预处理 一.日期时间.字符串的处理 日期 Date: 日期类,年与日 POSIXct: 日期时间类,精确到秒,用数字表示 POSIXlt: 日期时间类,精确到秒,用列表表示 Sys.date ...
- 最棒的7种R语言数据可视化
最棒的7种R语言数据可视化 随着数据量不断增加,抛开可视化技术讲故事是不可能的.数据可视化是一门将数字转化为有用知识的艺术. R语言编程提供一套建立可视化和展现数据的内置函数和库,让你学习这门艺术.在 ...
- 利用R语言打造量化分析平台
利用R语言打造量化分析平台 具体利用quantmod包实现对股票的量化分析 1.#1.API读取在线行情2.#加载quantmod包3.if(!require(quantmod)){4. instal ...
- R语言数据的导入与导出
1.R数据的保存与加载 可通过save()函数保存为.Rdata文件,通过load()函数将数据加载到R中. > a <- 1:10 > save(a,file='d://data/ ...
- R语言 数据重塑
R语言数据重塑 R语言中的数据重塑是关于改变数据被组织成行和列的方式. 大多数时间R语言中的数据处理是通过将输入数据作为数据帧来完成的. 很容易从数据帧的行和列中提取数据,但是在某些情况下,我们需要的 ...
- 第六篇:R语言数据可视化之数据分布图(直方图、密度曲线、箱线图、等高线、2D密度图)
数据分布图简介 中医上讲看病四诊法为:望闻问切.而数据分析师分析数据的过程也有点相似,我们需要望:看看数据长什么样:闻:仔细分析数据是否合理:问:针对前两步工作搜集到的问题与业务方交流:切:结合业务方 ...
- R语言重要数据集分析研究——R语言数据集的字段含义
R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...
- 美团 R 语言数据运营实战
一.引言 近年来,随着分布式数据处理技术的不断革新,Hive.Spark.Kylin.Impala.Presto 等工具不断推陈出新,对大数据集合的计算和存储成为现实,数据仓库/商业分析部门日益成为各 ...
随机推荐
- NC16681 [NOIP2003]加分二叉树
题目链接 题目 题目描述 设一个n个节点的二叉树tree的中序遍历为(l,2,3,-,n),其中数字1,2,3,-,n为节点编号.每个节点都有一个分数(均为正整数),记第j个节点的分数为di,tr ...
- 易语言连接Mysql
最近在写游戏的辅助工具研究了下易语言,下面就说下如何连接Mysql. .版本 2 .支持库 mysql .支持库 spec Mysql句柄 = 连接MySql ("127.0.0.1&quo ...
- C#-SendKeys方法的使用
模拟键盘CTRL+S 的输入 using System; using System.Collections.Generic; using System.Diagnostics; using Syste ...
- CSDN的Markdown编辑器使用说明
这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...
- OpenCV开发笔记(六十一):红胖子8分钟带你深入了解Shi-Tomasi角点检测(图文并茂+浅显易懂+程序源码)
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- centos7.x及centos8.x安装新版docker
前置步骤 # 如之前安装过docker,请先删除 yum remove docker docker-common docker-selinux docker-engine centos7 # cent ...
- 【C# .Net】List循环add,出现数据相同现象? 引发对引用类型和值类型的底层逻辑的思考。
赶项目时发现了一个问题,定义一个引用对象,如果在循环外定义对象,在循环内list.add(object).最后的结果却是所有的对象值都是一样的,即每add一次,都会把之前的数据覆盖. 解决方法:把对象 ...
- 【Azure Function App】解决Function App For Container 遇见ServiceUnavailable的异常
问题描述 在使用Terraform创建Function App 后,部署函数时候遇见 ServiceUnavailable (Bad Request -- Encountered an error ( ...
- 一个利用go反向代理解决api转发的例子(go反向代理)
实现的效果: 如果访问的url路径是类似 /163/ 或 /163/debian 的形式,则转发到163开源镜像服务器 直接上代码: package main import ( "fmt& ...
- Java 关于继承小练习
1 package com.bytezero.inherit; 2 3 /* 4 * 面向对象的特征二:继承性 5 * 6 * 一.继承性的好处: 7 * ①减少了代码的冗余,提供了代码的复用性 8 ...