Измерение наследуемости
Напомним, что коэффициент корреляции Пирсона — это отношение ковариации к среднему геометрическому дисперсий двух наборов данных. Он измеряет корреляцию между родителями и потомками, однако не всегда является наилучшей оценкой наследуемости. Если задуматься, логичнее определить наследуемость как отношение ковариации между родителями и потомками к дисперсии только родителей. В этом упражнении вы оцените наследуемость и выполните парный бутстрэп для получения 95%-ного доверительного интервала.
Это упражнение подчёркивает важный момент: статистический вывод (и анализ данных в целом) — не механическое применение формул. Нужно тщательно обдумывать вопросы, на которые вы хотите ответить с помощью данных, и выбирать подходящий метод анализа. Если вас интересует степень наследуемости признаков, введённая нами величина наследуемости подходит лучше, чем стандартный коэффициент корреляции Пирсона.
Напомним, что данные хранятся в bd_parent_scandens, bd_offspring_scandens, bd_parent_fortis и bd_offspring_fortis.
Это упражнение является частью курса
Статистическое мышление на Python (часть 2)
Инструкции к упражнению
- Напишите функцию
heritability(parents, offspring), которая вычисляет наследуемость как отношение ковариации признака у родителей и потомков к дисперсии признака у родителей. Подсказка: вспомните функциюnp.cov(), которую мы рассматривали в первой части курса. - Используйте эту функцию для вычисления наследуемости для G. scandens и G. fortis.
- Получите 1000 бутстрэп-реплик наследуемости с помощью парного бутстрэпа для G. scandens и G. fortis.
- Вычислите 95%-ный доверительный интервал для каждого вида, используя полученные бутстрэп-реплики.
- Выведите результаты.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
def heritability(parents, offspring):
"""Compute the heritability from parent and offspring samples."""
covariance_matrix = np.cov(parents, offspring)
return ____ / ____
# Compute the heritability
heritability_scandens = ____
heritability_fortis = ____
# Acquire 1000 bootstrap replicates of heritability
replicates_scandens = draw_bs_pairs(
____, ____, ____, size=____)
replicates_fortis = draw_bs_pairs(
____, ____, ____, size=____)
# Compute 95% confidence intervals
conf_int_scandens = ____
conf_int_fortis = ____
# Print results
print('G. scandens:', heritability_scandens, conf_int_scandens)
print('G. fortis:', heritability_fortis, conf_int_fortis)