• R语言平均值,中位数和众数


    R语言平均值,中位数和众数

    R中的统计分析通过使用许多内置函数来执行的。这些函数大部分是R基础包的一部分。这些函数将R向量与参数一起作为输入,并在执行计算后给出结果。

    我们在本章中讨论的是如何求平均值,中位数和众数。下面将分别一个个演示和讲解 -

    1.平均值

    平均值是通过取数值的总和并除以数据序列中的值的数量来计算。函数mean()用于在R中计算平均值。

    语法

    R中计算平均值的基本语法是 -
    mean(x, trim = 0, na.rm = FALSE, ...)
    R
    以下是使用的参数的描述 -
        x - 是输入向量。
        trim - 用于从排序的向量的两端删除一些观测值。
        na.rm - 用于从输入向量中删除缺少的值。

    示例

    # Create a vector. 
    x <- c(17,8,6,4.12,11,8,54,-11,18,-7)

    # Find Mean.
    result.mean <- mean(x)
    print(result.mean)
    R

    当我们执行上述代码时,会产生以下结果 -

    [1] 10.812
    Shell

    1.1.应用修剪选项

    当提供trim参数时,向量中的值进行排序,然后从计算平均值中删除所需数量的观察值。

    例如,当trim = 0.3时,每一端的3个值将从计算中删除以找到均值。

    在这种情况下,排序的向量为(-21,-5,2,3,42,7,8,12,18,54),从用于计算平均值的向量中从左边删除:(-21,-5,2)和从右边删除:(12,18,54)这几个值。

    # Create a vector.
    x <- c(12,7,3,4.2,18,2,54,-21,8,-5)

    # Find Mean.
    result.mean <-  mean(x,trim = 0.3)
    print(result.mean)
    R

    当我们执行上述代码时,会产生以下结果 -
    [1] 5.55
    Shell

    1.2.应用NA选项

    如果缺少值,则平均函数返回NA。要从计算中删除缺少的值,请使用na.rm = TRUE。 这意味着删除NA值。参考以下示例代码 -
    # Create a vector. 
    x <- c(12,7,3,4.2,18,2,54,-21,8,-5,NA)

    # Find mean.
    result.mean <-  mean(x)
    print(result.mean)

    # Find mean dropping NA values.
    result.mean <-  mean(x,na.rm = TRUE)
    print(result.mean)
    R

    当我们执行上述代码时,会产生以下结果 -

    [1] NA
    [1] 8.22
    Shell

    2.中位数

    数据系列中的中间值被称为中位数。R中使用median()函数来计算中位数。

    语法

    R中计算位数的基本语法是 -
    median(x, na.rm = FALSE)
    R

    以下是使用的参数的描述 -
        x - 是输入向量。
        na.rm - 用于从输入向量中删除缺少的值。

    示例
    # Create the vector.
    x <- c(12,7,3,4.2,18,2,54,-21,8,-5)

    # Find the median.
    median.result <- median(x)
    print(median.result)
    R

    当我们执行上述代码时,会产生以下结果 -

    [1] 5.6
    Shell

    3.众数

    众数是指给定的一组数据集合中出现次数最多的值。不同于平均值和中位数,众数可以同时具有数字和字符数据。

    R没有标准的内置函数来计算众数。因此,我们将创建一个用户自定义函数来计算R中的数据集的众数。该函数将向量作为输入,并将众数值作为输出。

    示例
    # Create the function.
    getmode <- function(v) {
       uniqv <- unique(v)
       uniqv[which.max(tabulate(match(v, uniqv)))]
    }

    # Create the vector with numbers.
    v <- c(2,1,2,3,1,2,3,4,1,5,5,3,2,3)

    # Calculate the mode using the user function.
    result <- getmode(v)
    print(result)

    # Create the vector with characters.
    charv <- c("baidu.com","tmall.com","yiibai.com","qq.com","yiibai.com")

    # Calculate the mode using the user function.
    result <- getmode(charv)
    print(result)
    R

    当我们执行上述代码时,会产生以下结果 -
    [1] 2
    [1] "yiibai.com"

  • 相关阅读:
    2019.10.07题解
    2019.10.06题解
    2019.10.05'题解
    2019.10.05题解
    java邮件发送
    注释类型 XmlType
    Spring 注解
    @SuppressWarnings(unchecked)作用解释
    vm文件
    Apache Shiro 使用手册(一)Shiro架构介绍
  • 原文地址:https://www.cnblogs.com/amengduo/p/9586549.html
Copyright © 2020-2023  润新知