Работа с одномерными данными на практике
Файл архив со скриптами "R myFunction" доступен на нашем сайте по ссылке
Проверка вектора данных на:
- на NA (пропущенные значения) -
- удаление NA (простое удаление пропущенных значений в исходном векторе)
- удаление NA с помощью функции mfNAdate(x), которая автоматически заменит все NA на среднее (или медиану)
- проверка на выбросы с помощью функции DvybrosBP, будет автоматическое удаление выбросов с построением ящиков с усами для сравнения до и после, выведет значения удаленных выбросов, создаст новый вектор Х без выбросов
- проверка данных на нормальное распределение с помощью функции Tnorm
- функции HistTa и HistTm принимают на вход вектор исходных данных и выводят:
1. гистограмму с границами нормированных отклонений (1, 2, 3 сигм)
2. HistTm добавляет на гистограмму только минимальное и максимальное значения из выборки
3. вернет таблицу значений вариант отклоняющиеся больше чем на три сигмы - описательная статистика исходных и обработанных данных
# Мои функции "Работа с одномерными данными на практике"
setwd('C:/R myFunction')
set.seed(55)
#x = round(rnorm(1000, 50, 15),1)
x = round(rnorm(2000, 50, 25),1)
# заменим в векторе случайным образом nNA чисел на NA
# sample(x, size, replace = FALSE)
# x — целое число (эквивалентно 1:x)
# или вектор ограничивающий диапазон (например: 5:15);
# size — количество генерируемых значений;
# replace — разрешаются ли повторения;
nNA = 10
x[sample(1:length(x), nNA, replace = FALSE)] = NA
####################################################################
####################################################################
#
# проверим вектор на NA (подсчитаем сколько всего NA)
length(x[is.na(x)])
# создадим новый вектор без NA:
Xclr = (x[!is.na(x)])
#------------------------------------------
# второй способ удалить NA воспользоваться функцией
# mfNAdate(x) автоматически заменит все NA на среднее (или медиану)
# при этом будет создан новый вектор значений X
source('mfNAdate.R')
mfNAdate(x)
summary(X)
summary(Xclr)
#-----------------------------------------------------------------
# проверка на выбросы
# DvybrosBP автоматическое удаление выбросов с построением
# ящиков с усами для сравнения до и после
# выведет значения удаленных выбросов
# создаст новый вектор Х без выбросов
source('DvybrosBP.R')
DvybrosBP(X)
#----------------------------------------------------------------
# Tnorm Функция автопроверки данных на нормальное распределение
# тест Шапиро-Уилка
source('Tnorm.R')
Tnorm(X)
Tnorm(Xclr)
#----------------------------------------------------------------
# функции HistTa и HistTm принимают на вход вектор исходных данных и выводят:
# 1. гистограмму с границами нормированных отклонений (1, 2, 3 сигм)
# 2. HistTm добавляет на гистограмму только
# минимальное и максимальное значения из выборки
# 3. вернет таблицу значений вариант отклоняющиеся больше чем на три сигмы
source('HistTm.R')
HistTm(X)
HistTm(Xclr)
#--------------------------------------------------------------------
# описательная статистика
options(scipen = 999, digits = 4) #отключить экспоненциальное представление в R
source('stat.ae.R')
stat.ae(X)
stat.ae(Xclr)