• R学习-5.Missing Values


    Missing Values

    缺失值在统计和数据分析中起着重要作用。通常,不能忽略数据中存在的缺失值,而应该仔细研究它们,看是其否存在造成这些缺失值的潜在模式或原因。

    在R中用NA表示任意值是'not available' or 'missing' (in the statistical sense)。NA不是一个真实的值,就仅仅是一个占位符,故其它数和它进行算术运算、做比较等,也不会得到真实的值,只会返回NA

    > NA + 2
    [1] NA
    > NA > 2
    [1] NA
    > c(1,2,NA,4,5,NA) + 4
    [1]  5  6 NA  8  9 NA
    > c(1,2,NA,4,5,NA) * 4
    [1]  4  8 NA 16 20 NA
    > c(1,2,NA,4,5,NA) < 4
    [1]  TRUE  TRUE    NA FALSE FALSE    NA
    

    可以通过调用is.na()来判断向量中的元素是否为NA

    > vc = c(1,NA,2,NA,3)
    > is.na(vc)
    [1] FALSE  TRUE FALSE  TRUE FALSE
    

    ==可以用来判断两个值是否一样,那么NANA进行判断,是否返回TRUE呢?答案为否,前面说到,NA不是一个实际值,两个NA也是无法比较的。

    > 5 == 5
    [1] TRUE
    > NA == NA
    [1] NA
    > c(1,NA,2,NA,3) == NA
    [1] NA NA NA NA NA
    

    还有一中类型missing value:NaN用来表示'not a number'。Inf表示无穷大'infinity'。可以用函数is.nan()来判断是否是NaN

    > 0 / 0 
    [1] NaN
    > Inf - Inf
    [1] NaN
    > is.nan(0/0)
    [1] TRUE
    

    其它的函数介绍

    sum()函数可以将函数的传入参数进行求和。比如:

    > my_data <- c(1,2,3)
    > sum(my_data)
    [1] 6
    

    前面提到NA和其它值进行算术计算结果也是返回NA。那如果sum()传入的参数中有NA值,是不是最终结果返回NA呢。

    > sum(c(1,NA,2,NA,3))
    [1] NA
    

    对的,结果是返回NA。但sum()提供了一个参数'na.rm' 可以用来忽略数据中的missing value(NA, NaN)。TTRUE的缩写

    > sum(c(1,NA,2,NaN,3), na.rm = T)
    [1] 6
    

    rnorm()可以用来随机生成一组正太分布数据。默认是标准正太分布,可以根据参数改变。

    > y <- rnorm(10)
    > y
     [1] -1.07976839  0.57909316  0.76848483  1.31997079  0.76564674  1.67086863
     [7]  0.05381471  1.30779954 -2.03273843 -0.13120774
    > args(rnorm)
    function (n, mean = 0, sd = 1) 
    NULL
    

    sample()函数用于抽样。参数'x'是总体,'size'设置需要抽取的数量,'replace'是否放回原处,'prob'设置每个元素抽到的概率。

    > sample(1:10, 4)
    [1] 7 9 6 4
    > args(sample)
    function (x, size, replace = FALSE, prob = NULL) 
    

    上一节:R学习-4.Vectors
    下一节:R学习-6.Subsetting Vectors

  • 相关阅读:
    selenium---元素定位(find_element)
    selenium---八种定位元素方法
    selenium---环境配置
    vue el-table 自适应表格内容宽度
    另类的开发环境搭建
    基于Django+celery二次开发动态配置定时任务 ( 二)
    基于datax的数据同步平台
    mysql常用日期、时间查询
    MySQL数据库管理
    mysql5.7.20多实例编译安装
  • 原文地址:https://www.cnblogs.com/huanping/p/13131176.html
Copyright © 2020-2023  润新知