Foro de debate

Como crear un ciclo for para datos pareados

 
Imagen de Manuel Muñoz Márquez
Re: Como crear un ciclo for para datos pareados
de Manuel Muñoz Márquez - jueves, 10 de enero de 2019, 07:32
 

Buenas Daniela:

¿Puede poner el código con el que está intentando hacerlo?

Un saludo.

Imagen de Daniela Estay
Re: Como crear un ciclo for para datos pareados
de Daniela Estay - jueves, 10 de enero de 2019, 14:48
 

Es este:

c=c(13,14,36,38,40,41,45,46,47,48,54,248,270,290,291,293,310,326,327,336,360,361,600,650,700,800,801)

d=c(28628,197,1186,228,197,410,3173,571,270,152,16,457,971,2314,2261,1404,115,50,18,2218,15143,

83,26507,13523,8074,3780,7168)

for(i in 1:27)

{Cced_i=datos[datos$Codigo_Producto==c[i],]

assign(paste0('Cced_', c[i]), Cced_i)

Mced_i=Cced_i[sample(nrow(Cced_i),size=d[i]),]

assign(paste0('Mced_', c[i]), Mced_i)

print((mean(Mced_i$Capital_Cedido)))}


La idea es que me quede una columna con todos los Cced y los Mced, no valores solos que va imprimiento en la consola a medida que va haciendo cada iteración del for.


Imagen de Manuel Muñoz Márquez
Re: Como crear un ciclo for para datos pareados
de Manuel Muñoz Márquez - viernes, 11 de enero de 2019, 07:44
 

Buenas:

Si no pone el código que no le funciona, no se le puede ayudar. En ese código no veo ningún rbind.

Si no da información suficiente de qué quiere hacer no es posible ayudarle.

Ponga un ejemplo con un conjunto de datos pequeños y muestre con ese conjunto de datos, qué quiere calcular.

Un saludo.

Imagen de Daniela Estay
Re: Como crear un ciclo for para datos pareados
de Daniela Estay - viernes, 11 de enero de 2019, 13:37
 

Es este:

a=c(13,14,36,38,40,41,45,46,47,48,51,53,54,55,95,99,213,214,215,248,262,267,270,289,290,291,292,293,

294,297,310,326,327,330,332,336,360,361,362,402,404,500,600,650,700,800,801)

b=c(2939,183,824,213,179,351,2051,463,234,133,10,16,16,3,3,8,5,2540,89,357,4,898,635,354,910,1105,218,728,905,58,115,

49,18,121,8,819,604,75,18,2378,768,419,2925,2693,3137,1430,1858)

for(i in 1:47)

{C_i=datos[datos$Codigo_Producto==a[i],]

assign(paste0('C_', a[i]), C_i)

M_i=C_i[sample(nrow(C_i),size=b[i]),]

assign(paste0('M_', a[i]), M_i)

cap_as=cbind(cap_as,M_i)}

Con el último lo que quiero hacer es ir agregando cada elemento que va haciendo del M_i, de manera que cuuando llame cap_as me salga la columna con los valores de cada for que hace paa M_i

Imagen de Manuel Muñoz Márquez
Re: Como crear un ciclo for para datos pareados
de Manuel Muñoz Márquez - sábado, 12 de enero de 2019, 10:05
 

Buenas:

Este código falla debido a que en la primera pasada del bucle, cap_as no está definido.

Prueba con esto

if (i==1) cap_as = M_i else cap_as=cbind(cap_as,M_i)

Un saludo.