Foro de debate

Bucle "for" y creación de una nueva variable

Bucle "for" y creación de una nueva variable

de Robert Boix -
Número de respuestas: 2
Hola,
mi idea es la siguiente:
Tengo una base de datos de cientos de casos y quiero aplicar un test estadístico a una muestra de 100 casos tomadas aleatoriamente. Del resultado de ese test obtendré un p-value.
Esta misma operación la quiero hacer 50 veces y quiero que se guarde en un vector cada uno de los p-values que vaya obteniendo.
Todo lo tengo más o menos claro como hacerlo pero no saber cómo puedo crear ese nuevo vector de p-values (una nueva variable).
El bucle lo haría con un "for" pero, alguien me podría decir la línea o expresión para que cada uno de los p-values vaya ocupando una posición en la nueva variable?

Espero haberme explicado

gracias

En respuesta a Robert Boix

Re: Bucle "for" y creación de una nueva variable

de Carolina Leal -
antes del for, crea una vector

p.values=NULL

NUll, te permite crear un vector sin dimensión, a medida que lo vas llenando se agranda.

ahora, dentro del for, me imagino que tu indice es i in 1:50 (por ejemplo)

entonces... supongamos que le llamaste "p" a tus p valores en tu test... entonces, así lo vas guardando:

p.values[i]=p



eso es.


Ahora, si no sabes cómo obtener el p valor de tu test, una pista sería esto: p=test$p.value
En respuesta a Carolina Leal

Re: Bucle "for" y creación de una nueva variable

de Manuel Muñoz Márquez -
La solución que te da Carolina es correcta, pero por motivos técnicos que tienen que ver con la forma en que R gestiona los objetos en memoria, si conoces el tamaño del vector es preferible crearlo desde el principio.

Para ello bastaría reemplazar p.values = NULL por p.values = numeric(50), siendo 50 el número de valores que vas a guardar.

Saludos.