Читать книгу Проведение статистического анализа на языке программирования R в медико-биологических исследованиях. Учебное пособие - - Страница 10
2. НОРМАЛЬНЫЙ ЗАКОН РАСПРЕДЕЛЕНИЯ СЛУЧАЙНОЙ ВЕЛИЧИНЫ
2.1.1. Выборочное среднее
ОглавлениеПри проведении анализа данных первая величина, которую вычисляет исследователь – это выборочное среднее значение43. В данном учебном пособии не рассматривается вопрос математически строгого представления средних величин, а представлены наиболее часто использующиеся на практике. Выборочная средняя величина вычисляется по уравнению (1):
где N – количество исследований, вычисленное по одному параметру в наборе данных; Xi – фактическое значение усредняемой величины.
Она является обобщенной характеристикой в случае однородности данных, описывающей явления, имеющие одну и ту же размерность. Например, если врач проводит исследование веса или роста пациентов, возраст которых составляет 20 полных лет, то ему необходимо описать вес или рост всех пациентов в возрасте 20 полных лет. Для этих целей он будет использовать выборочное среднее значение. В случае данных, распределенных в соответствии с нормальным законом распределения, выборочное среднее значение будет соответствовать максимуму частоты встречаемости исследуемого значения, как представлено на рисунке 4.
Рисунок 4 – Выборочное среднее (зеленая вертикальная линия)
для нормального закона распределения44
На языке программирования R выборочное среднее значение вычисляется с помощью функции mean () из пакета base.
В случае, если врачу необходимо более точно описать средний вес пациентов (например) в возрасте 20 лет с учетом их (например) роста, то для этих целей нужно использовать среднее взвешенное значение (2):
где N – количество исследований, вычисленное по одному параметру в наборе данных; Xi – фактическое значение усредняемой величины; ωi – вес i-го значения усредняемой величины в общей выборке.
В качестве весового коэффициента ωi в этом случае будет выступать величина, описывающая рост i-го пациента в возрасте 20 лет. Средняя взвешенная величина выступает в качестве характеристики, описывающей совокупность явлений, имеющих одну и ту же размерность с учетом влияния сторонних признаков (например, вес пациентов с учетом их роста).
На языке программирования R выборочное среднее значение вычисляется с помощью функции weighted.mean () из пакета base.
При исследованиях долей возникновения признака может возникнуть необходимость вычисления средней доли признака по отношению ко всем признакам. В этом случае среднее значение доли вычисляется как (3):
где p – доля единиц, обладающих исследуемым признаком; q – доля единиц, не обладающих исследуемым признаком, равна 1-p.
Пример вычисления выборочного среднего и средневзвешенного на языке R
Для примера вычисления средних и средневзвешенных значений используем набор данных anorexia из пакета MASS. Вычислим среднее и средневзвешенное значение веса пациента. В качестве весового коэффициента (уравнение 2 и текст под ним) будем использовать долю пациентов в каждой группе.
Листинг 3
library (MASS) #45Подключаем библиотеку, содержащую набор данных anorexia
#=====================================================
#Исследуем структуру набора данных
#=====================================================
str (anorexia)
#=======================================================
# Выводим структуру данных
#=======================================================
'data.frame’: 72 obs. of 3 variables:
$ Treat: Factor w/ 3 levels «CBT», «Cont», «FT»: 2 2 2 2 2 2 2 2 2 2..
Продолжение листинга 3
$ Prewt: num 80.7 89.4 91.8 74 78.1 88.3 87.3 75.1 80.6 78.4…
$ Postwt: num 80.2 80.1 86.4 86.3 76.1 78.1 75.1 86.7 73.5 84.6…
#========================================================
# Выводим заголовочную часть набора данных
#========================================================
head (anorexia)
#=======================================================
# Выводим заголовочную часть файла
#========================================================
Treat Prewt Postwt
1 Cont 80.7 80.2
2 Cont 89.4 80.1
3 Cont 91.8 86.4
4 Cont 74.0 86.3
5 Cont 78.1 76.1
6 Cont 88.3 78.1
#========================================================
# Вычисляем выборочное среднее в контрольной группе пациентов до
# проведения лечения
#=====================================================
mean (anorexia [anorexia$Treat==«Cont», ] $Prewt)
#========================================================
# результат вычисления среднего веса пациента в контрольной группе
#========================================================
[1] 81.55769
#========================================================
mean (anorexia [anorexia$Treat==«CBT», ] $Prewt)
#========================================================
# результат вычисления среднего веса пациента в группе с
Продолжение листинга 3
# когнитивно-поведенческой терапией
#========================================================
[1] 82.68966
#========================================================
mean (anorexia [anorexia$Treat==«FT», ] $Prewt)
#========================================================
# результат вычисления среднего веса пациента в группе с семейной терапией
#========================================================
[1] 83.22941
#========================================================
#Вычисление взвешенного среднего значения
#========================================================
# Определяем количество пациентов в каждой группе и общее количество пациентов
numInCont <– length46 (anorexia [anorexia$Treat==«Cont», ] $Prewt)
numInCBT <– length (anorexia [anorexia$Treat==«CBT», ] $Prewt)
numInFT <– length (anorexia [anorexia$Treat==«FT», ] $Prewt)
numAll <– length (anorexia$Prewt)
#=======================================================
# Формируем вектор весов и вектор данных
# В данном примере в качестве веса выступает доля пациентов в каждой
# группе
#=======================================================
weightData <– c (numInCont/numAll, numInCBT/numAll, numInFT/numAll)
Продолжение листинга 3
meanData <– c (mean (anorexia [anorexia$Treat==«Cont», ] $Prewt),
mean (anorexia [anorexia$Treat==«CBT», ] $Prewt),
mean (anorexia [anorexia$Treat==«FT», ] $Prewt)
weighted.mean (meanData, weightData)
#=======================================================
# Результат вычисления средневзвешенного значения веса пациента
#=======================================================
[1] 82.40833
Полученные значения среднего и средневзвешенного веса пациентов отражают типичный уровень веса пациента в исследуемой группе, формирующийся под воздействием доминирующих неслучайных параметров. Установление неслучайных параметров, влияющих (в данном случае на вес пациента) на среднее значение, требует дальнейшего исследования данных с использованием соответствующих статистических критериев, в том числе критериев, позволяющих сравнивать средние величины (например, t-критерий Стьюдента). Оценка среднего отклонения отдельных значений (например, веса пациента) от среднего значения описывается с помощью среднего квадратического отклонения.
43
Колмогоров А. Н. Избранные труды. Математика и механика. М.: Наука, 1985.
44
Совпадает со значением, соответствующим максимуму частоты встречаемости признака или измеряемой величины в случае нормального закона распределения данных.
45
Знак экранирования однострочных комментариев.
46
Функция length () предназначена для определения длины вектора, более подробно см. справку в RStudio -?length.