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