Мне приходится сравнивать результаты нормального квантиля (например, 0,975) с различными значениями df в t-распределениях, пока он не даст те же результаты, что и тот же квантиль нормального распределения.например;найти минимальное значение df для квантиля .975 распределения t, чтобы получить то же значение, что и квантиль .975 нормального распределения с точностью до 2 десятичных знаков (для этого необязательно нужен код r, хотя это поможет в следующей части присваивания).
нужен код r, который может делать то же, что и выше, но с любым квантилем и любым количеством десятичных знаков.
Сначала я попытался разобраться с версией .975, но безуспешно, a и b - переменные с результатами qnorm и qt:
a <- round(qnorm(.975,0,1),2)
a
df <- c(1:1000)
b <- round(qt(.975,df),2)
b
for (i in 1:length(df)) {
if (round(qt(.975,df[i]),2)==round(qnorm(.975,0,1),2)) {
df[i]
}
}
Попробовал все так же просто, как если бы a ==b, затем верните значение df для i и получили ошибку, условие имеет длину> 1, и будет использоваться только первый элемент, с другой стороны, приведенный выше код не дает никаких ошибок или результата.