R_Studio(学生成绩)对数据缺失值md.pattern()、异常值分析(箱线图)

 

 

  我们发现这张Gary.csv表格存在学生成绩不完全的(五十三名学生,三名学生存在成绩不完整、共四个不完整成绩)

    79号大学语文、高等数学

    96号中国近代史纲要

    65号大学体育

 

  

 

   

 

(1)NA表示数据集中的该数据遗失、不存在。在针对具有NA的数据集进行函数操作的时候,该NA不会被直接剔除。如x<-c(1,2,3,NA,4),取mean(x),则结果为NA,如果想去除NA的影响,需要显式告知mean方法,如 mean(x,na.rm=T);NA是没有自己的mode的,在vector中,它会“追随”其他数据的类型,比如刚刚的x,mode(x)为numeric,mode(x[4])亦然。

(2) NULL表示未知的状态。它不会在计算之中,如x<-c(1,2,3,NULL,4),取mean(x),结果为2.5。NULL是不算数的,length(c(NULL))为0,而length(c(NA))为1。可见NA“占着”位置,它存在着,而NULL没有“占着”位置,或者说,“不知道”有没有真正的数据。

    在R语言中缺失值通常以NA表示,判断是否缺失值的函数是is.na。
    另一个常用到的函数是complete.cases,它对数据框进行分析,判断某一观测样本是否完整。
NA与NULL的区别

 

setwd('D:\\data')                                #设置工作目录
list.files()                                    #列出工作目录下的文件
dat=read.csv(file="Gary.csv",header=TRUE)        #打开Gary.csv文件


is.na(dat)                                       #对数据进行判空,空值返回TRUE
complete.cases(dat)                              #对数据行进行判空,存在空值的行返回TRUE

sum(complete.cases(dat))                         #统计未缺失数
sum(!complete.cases(dat))                        #统计缺失数
mean(!complete.cases(dat))                       #统计缺失比例
dat[!complete.cases(dat),]                       #返回存在空值行数据

library(mice)                                   
md.pattern(dat)                                  #针对复杂的数据集值进行处理


#异常值检测箱线图
sp<-boxplot(dat$"大学语文",boxwex=0.7,norch=FALSE)
title("大学语文")
xi=1.1
sd.s=sd(dat[complete.cases(dat),]$"大学语文")   #标准差
mn.s=mean(dat[complete.cases(dat),]$"大学语文")  #均值
points(xi,mn.s,col="red",pch=18)
arrows(xi, mn.s - sd.s, xi, mn.s + sd.s, code = 3, col = "pink", angle = 75, length = .1)

text(rep(c(1.05,1.05,0.95,0.95),length=length(sp$out)),labels=sp$out[order(sp$out)],
     sp$out[order(sp$out)]+rep(c(150,-150,150,-150),length=length(sp$out)),col="red")

plot(saledata[,1],saledata[,2])
lines(saledata[,2])
Gary.R

 

 

对成绩数据进行缺失值分析,并表述分析过程

 

 

处理方法

  对数据进行判空,空值返回TRUE

    is.na(dat) 

  对数据行进行判空,存在空值的行返回TRUE
    complete.cases(dat) 

 

  统计未缺失数

    sum(complete.cases(dat)) 

  统计缺失数
    sum(!complete.cases(dat)) 

  统计缺失比例
    mean(!complete.cases(dat)) 

  返回存在空值行数据
    dat[!complete.cases(dat),] 

 

  依赖包mice

  md.pattern(dat) #针对复杂的数据集值进行处理

 

 

 

   md.pattern()

    依赖包mice

       生成一个以矩阵或数据框形式展示缺失值模式的表格

 

 

 

  0表示变量的列中没有缺失,1则表示有缺失值

   第一行第一个数据:完整成绩人数

         第二个数据至倒数第二个数据:列出全部学生考试科目

              最后一个数据:缺少考试科目数量(争对复杂数据,这里象对数据简单)

   第二行至倒数第二行:缺少考试成绩学生信息

      第二行表示存在一个学生缺少 中国近代史纲要成绩 缺少成绩科目数量为1

         第三行表示存在一个学生缺少 大学语文和高等数学 缺少成绩科目数量为2

      第四行表示存在一个学生缺少 大学体育 缺少成绩科目数量为1

  最后一行:给出了每个科目的缺失值数目(中国近代史纲要成绩、大学语文和高等数学、大学体育)

      最后一个数据:缺少科目学生人数(3人)

 

 

对成绩数据进行异常值分析,并表述分析过程

 

  箱线图  传送门

  箱线图(Boxplot)也称箱须图(Box-whisker Plot),是利用数据中的五个统计量:最小值、第一四分位数、中位数、第三四分位数与最大值来描述数据的一种方法,它也可以粗略地看出数据是否具有有对称性,分布的分散程度等信息,特别可以用于对几个样本的比较。  

 

  

 

 

 

 

#异常值检测箱线图
sp<-boxplot(dat$"大学语文",boxwex=0.7,norch=FALSE)
title("大学语文")
xi=1.1
sd.s=sd(dat[complete.cases(dat),]$"大学语文")   #标准差
mn.s=mean(dat[complete.cases(dat),]$"大学语文")  #均值
points(xi,mn.s,col="red",pch=18)
arrows(xi, mn.s - sd.s, xi, mn.s + sd.s, code = 3, col = "pink", angle = 75, length = .1)

text(rep(c(1.05,1.05,0.95,0.95),length=length(sp$out)),labels=sp$out[order(sp$out)],
     sp$out[order(sp$out)]+rep(c(150,-150,150,-150),length=length(sp$out)),col="red")

plot(saledata[,1],saledata[,2])
lines(saledata[,2])

 

 

   提示错误:Error in text.default(rep(c(1.05, 1.05, 0.95, 0.95), length = length(sp$out)),  : 'labels'长度不能设成零

 

  测试科目 大学语文 时尽然无耻的报错了 Σ(= = !)...

 

  sp$out:结果中会自带异常值,就是下面代码中的sp$out,这个是做箱型图,按照上下边界之外为异常值进行判定的

 
   异常值可能对统计结果(均值)参数不对称的影响,因此导致误导性解释

  对数据进行规范化目的:规范化目的是使结构更合理,消除存储异常,使数据冗余尽量小,便于插入,删除,和跟新

 

   测试高等数学

 

 

  成功画出箱线图!!

 

   测试 高级语言程序设计 

 

   成功画出箱线图!!

 

转载于:https://www.cnblogs.com/1138720556Gary/p/9649250.html

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: cplex_studio1210.linux-x86-64.zip 是一个文件的名称,它是IBM CPLEX Studio的一个压缩文件,用于在Linux系统上的64位架构中安装和使用CPLEX Studio。 CPLEX Studio是一个高性能的优化和约束编程求解器,它提供了一个强大的工具集,用于解决线性规划、整数规划、混合整数规划、凸二次规划等各种优化问题。 通过使用cplex_studio1210.linux-x86-64.zip文件,用户可以在Linux操作系统上快速安装和配置CPLEX Studio。首先,用户需要将该文件下载到本地计算机上,并解压缩。解压缩后,用户将得到一个包含安装程序的文件夹。 然后,用户需要按照软件提供的安装指南,执行安装程序。在安装过程中,用户可以根据自己的需要选择安装的组件和配置选项。安装完成后,用户可以使用CPLEX Studio的命令行界面或集成开发环境来编写和解决优化问题。 cplex_studio1210.linux-x86-64.zip文件提供了一种方便和可靠的方式来获取和安装CPLEX Studio,从而帮助用户在Linux操作系统上进行高性能优化和约束编程求解。 ### 回答2: cplex_studio1210.linux-x86-64.zip 是IBM CPLEX Studio 的一个软件包,适用于 Linux x86-64 平台。CPLEX Studio 是一个用于数学规划和决策优化的专业软件工具,它为用户解决各种复杂的商业和工业问题提供了强大的建模语言和优化算法。 该软件包提供了运行 CPLEX Studio 所需的所有文件和依赖项。用户可以通过解压缩此 zip 文件来获取 CPLEX Studio 的安装文件,并在 Linux x86-64 系统上进行安装和配置。 CPLEX Studio 提供了一个强大的集成开发环境(IDE),用户可以使用该环境进行模型建立和求解。该 IDE 包含了一个形用户界面(GUI),用户可以通过该界面直观地创建模型和设置求解器参数。此外,CPLEX Studio 还提供了一个命令行界面,用户可以直接使用命令来控制模型的建立和求解过程。 CPLEX Studio 的优化算法采用了一系列高效的数学规划和线性规划算法,可以处理线性规划、整数规划、混合整数规划等多种问题。该软件包还包含了一些高级特性,如约束编程、拟合和优化的统计、最佳路径搜索等。 总而言之,cplex_studio1210.linux-x86-64.zip 是一个包含了 CPLEX Studio 软件安装文件和依赖项的压缩包,它提供了一套强大的工具和算法,用于数学规划和决策优化问题的建模和求解。 ### 回答3: cplex_studio1210.linux-x86-64.zip 是一个压缩文件,用于在Linux 64位操作系统上安装和使用IBM的CPLEX Studio软件。CPLEX Studio是一个强大的数学优化工具,用于解决复杂的数学优化问题。 该压缩文件包含了安装和运行CPLEX Studio所需的所有文件和资源。安装CPLEX Studio可以提供一种可视化界面,方便用户创建、调整和解决数学优化问题。它还可以通过API(应用程序编程接口)与其他编程语言(如C++、Python等)集成,使得用户能够以编程方式使用CPLEX Studio。 要在Linux 64位操作系统上安装CPLEX Studio,需要先下载并解压cplex_studio1210.linux-x86-64.zip压缩文件。解压后,会得到一个文件夹,其中包含了安装程序和相关文件。 运行安装程序,按照提示进行安装。安装过程中可能需要提供许可证密钥或选择安装路径等信息。完成安装后,就可以开始使用CPLEX Studio来解决数学优化问题。 总之,cplex_studio1210.linux-x86-64.zip是一个用于在Linux 64位操作系统上安装和使用IBM CPLEX Studio的压缩文件。通过安装和使用CPLEX Studio,用户能够解决复杂的数学优化问题,并获得可视化界面和编程接口等功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值