R подсказки названий функций для анализа данных

Last modified date

Comments: 0

  1. Загрузка данных data<-read.csv(“/Users/crincum/Statistic/Data_Course1.csv”, sep=”;”,dec=”,”)
  2. Номинальные данные в выборках (0 или 1), превращаем в факторы, чтобы R понимала, что это не обычные значения, а номинальные data$IsGeo <- as.factor(data$IsGeo)

Как подсчитать основные меры вариативности?

  • min, max, mean, median
  • quantile – расчет квартилей
  • var (x) – несмещенная дисперсия, рассчитанная для n-1
  • sd (x) или sqrt(var(x)) – среднеквадратичное отклонение
  • names(sort(-table(x)))[1] – мода или Modus
  • IQR(x) – Среднеквадратичное отклонение
  • mad(x, center = mean(x)) – AAD среднее абсолютное отклонение
  • mad(x) – MAD среднее медианное отклонение

Проверка на нормальность данных

Если судя по графику функции распределения – распределение признака похоже на нормальное, то можно провести тест Шапиро-Уилка чтобы убедиться в этом:
shapiro.test(rnorm(data$test))
shapiro.test(FC)
##
## Shapiro-Wilk normality test
##
## data: FC
## W = 0.68423, p-value = 9.549e-12
Значение p-value очень маленькое. Это значит, что тест на нормальность не пройден.
Если по результатам теста p-value > 0.05, это дает нам предполагать нормальное распределение.
Остается предположение о логнормальности данных. Для того, чтобы проверить эту теорию, возьмем логарифм переменной и проведем тест Шапиро-Уилка уже для него.
shapiro.test(rnorm(data$test))
или
logFC<-log(FC)
shapiro.test(logFC)
##
## Shapiro-Wilk normality test
##
## data: logFC
## W = 0.98479, p-value = 0.4715
Значение p-value резко возросло и теперь свидетельствует о нормальности данных. Это значит, что преобразование сработало и распределение переменной FC – логнормальное, так как логарифм логнормального распределения – нормальное распределение.
Построим график распределения количества организаций, после перевода в нормальное
plot(density(logFC), main = "Логарифм распределения значений", xlab = "Количество", ylab = "Частота", col = "red")
Он уже должен больше напоминать нормальный.

Построение графиков плотности и распределения

plot(ecdf(dataCourse1$AddressCount))
plot(density(test,adjust=2))

crincum

Leave a Reply

Your email address will not be published. Required fields are marked *

Post comment