es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Aplicación modelo en filas específicas de un conjunto de datos

Nunca he utilizado Stata antes, sé cómo resolver el problema en R, pero debo resolver este problema en Stata.

Tengo un conjunto de datos (llamémoslo dataset1), y quiero ejecutar un modelo específico (modelo1) en las primeras 4000 filas de observaciones. Las 3000 observaciones restantes serán mi conjunto de prueba.

Quiero repetir el proceso para otros 10 conjuntos de datos (las variables y Y son exactamente las mismas). En R este ejemplo es simple:

model1.1<-lm(Y~x1+x2+x3, data=dataset1[1:4000,]
model1.2<-lm(Y~x1+x2+x3, data=dataset2[1:4000,]
model1.3<-lm(Y~x1+x2+x3, data=dataset3[1:4000,]

Quiero hacer eso en Stata. También quiero guardar las salidas para cada uno de esos resultados (en R, por ejemplo, puedo guardarlo model1.1.summary<-summary(model1.1). ¿Qué líneas de código necesito para hacer esa parte también? Estoy extremadamente confundido. Ejecutaría el modelo en R si fuera tan eficiente como en Stata.

Hasta ahora tengo el modelo ejecutándose en Stata.

meoprobit Y X1 X2 X3|| LVL:

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para ejecutar el modelo en las primeras 4000 filas de observaciones, puede usar la opción in. Por ejemplo:

    meoprobit Y X1 X2 X3 in 1/4000 || LVL:
    

    Para repetir el proceso en 10 conjuntos de datos más, puede usar un bucle. Por ejemplo:

    forvalues i = 1/10 {
        meoprobit Y X1 X2 X3 in `i'*4000/`i'*4000+3999 || LVL:
    }
    

    Para guardar las salidas, puede usar el comando estimates store. Por ejemplo:

    forvalues i = 1/10 {
        meoprobit Y X1 X2 X3 in `i'*4000/`i'*4000+3999 || LVL:
        estimates store model`i'
    }
    

Comments are closed.