#r #function #average #mean
Вопрос:
В чем разница между этими двумя?
mean(c(1,2,21))
и
mean(1,2,21)
Ответы разные, но в чем смысл каждого из них?
Комментарии:
1. Это очень простой вопрос R. В принципе, в первом случае вы принимаете среднее значение вектора из трех элементов; в другом случае вы принимаете среднее значение 1 и предоставляете некоторую бесполезную информацию аргументам
mean
функции. Смотреть на?mean
Ответ №1:
mean(c(1,2,21))
#[1] 8
При этом в функцию передается вектор из трех элементов mean
, и вычисляется среднее значение этих трех элементов.
mean(1,2,21)
#[1] 1
Это передается 1
функции как первый аргумент, 2
как второй аргумент и 21
как третий аргумент mean
. mean
передает эти аргументы mean.default
. В help("mean.default")
вы можете найти аргументы этой функции:
- Объект, для которого вы хотите получить среднее значение.
- доля (от 0 до 0,5) наблюдений, которая должна быть урезана с каждого конца x до вычисления среднего значения. Значения обрезки за пределами этого диапазона принимаются за ближайшую конечную точку.
- логическое значение, указывающее, следует ли удалять значения NA перед продолжением вычисления. (Поскольку вы передаете числовое значение, оно автоматически преобразуется в логическое).
Итак, вы рассчитываете это:
mean.default(1, 0.5, TRUE)
[1] 1
Ответ №2:
При использовании mean(c(1,2,21))
Р принимает среднее значение из вектора, состоящего из 1, 2 и 21, во втором случае, при использовании mean(1,2,21)
, приравнивается к mean(1, trim=2, na.rm=21)
и Р принимает имею один ряд, 1, и вы передаете значение 2 trim
, которое управляет на фракции (0-0.5) наблюдений необходимо обрезать с каждого конца вектора до среднего вычисляется, а также вы даете значение 21
для na.rm
аргумента, который должен быть TRUE
или FALSE
, как вы можете увидеть 2 и 21 без c
совершенно бесполезны здесь.