Я имитирую другой набор данных здесь, и снова застрял!Имитированный набор данных в R
Вот что я хочу сделать:
200 наблюдений, с 90 независимыми переменными (в среднем 0, сд 1)
уравнение для создания у есть: у = 2x_1 + ... + 2x_30 - x_31 - ... - x_60 + 0 * x_61 + ... + 0 * x_90 + mu (Другими словами, первые 30 x значений будут иметь коэффициент 2, следующие 30 значений имеют коэффициент -1 и последние 30 значения имеют коэффициент 0). му также является случайной генерироваться обычной переменной со средним значением 0, с.о. 10.
Вот что я до сих пор:
set.seed(11)
n <- 200
mu <- rnorm(200,0,10)
p1 <- for(i in 1:200){
rnorm(200,0,1)
}
p2 <- cbind(p1)
p3 <- for(i in 1:90){
if i<=30, y=2x
if i>30 & i<=60, y=-x
if i>60 & i<=90, y=0x
}
Я все еще учусь много аспектов R, поэтому я довольно уверен, код имеет много ошибок, даже с точки зрения синтаксиса. Ваша помощь будет действительно оценена!
Спасибо!
не могли бы вы объяснить это немного дальше в своем ответе? Я не совсем уверен, как вы добрались до некоторых из этих кодов. Или есть более простой способ сделать это без пакета, и только для циклов? – Elle
Поскольку все они независимы, вместо использования 'rmvnorm' вы можете просто выполнить' x <- replicate (n = 90, expr = rnorm (200)) '. – Gregor
@ExperimenteR, спасибо за помощь с петлями for. Это имеет для меня гораздо больше смысла. Я думаю, я пытался заставить R сделать слишком много для создания моих циклов, и, конечно же, синтаксис был выключен. Еще раз спасибо. – Elle