[R-es] Error - subscript out of bounds

Carlos Santos c@r|o@@@nto@@c@m @end|ng |rom gm@||@com
Mar Nov 2 18:21:46 CET 2021


grande Diego grande, si señor, uffff estaba medio loco y no sabia por donde
tirar

Ahora si funciono todo, ya no da el error y ya ajuste los import, dplyr ya
lo tenia pero no apuntaba el filter y tampoco ya da el aviso de NOTE claro

Un millón de gracias Diego,

un saludo cordial
Carlos




El mar, 2 nov 2021 a las 17:42, Diego Hernangómez Herrero (<
diego.hernangomezherrero using gmail.com>) escribió:

>
> Buenas,
>
> Puede ser que el filter que esté aplicando en tu función sea el de dplyr?
>
>
> Tienes la opción de llamar la función con stats::filter en lugar de
> filter, y no importarla. Yo probaría tu función sustituyendo el filter con
> dplyr::filter y stats::filter, para empezar a entender exactamente la
> función que estás llamando.
>
> En cuanto a la NOTE, una vez que tengas identificada la función filter,
> añade el paquete (dplyr or stats) en DESCRIPTION Imports
>
> El El mar, 2 nov 2021 a las 7:05, Carlos Santos <
> carlossantos.csm using gmail.com> escribió:
>
>> Hola, cono estan
>>
>> Estoy haciendo un package y resulta que un bucle foreach, me da el error
>> de  subscript out of bounds, cuando le incluyo dentro del package el
>> import
>> de las librerias
>>
>> @ importFrom stats dist filter
>>
>> Pero si no le incluyo el import, entonces el bucle funciona correctamente.
>> el problema es que si no le incluyo el importfrom correspondiente de esas
>> librerias, entonces al chequear el pakcage salen NOTES de que seria bueno
>> incluirlas.
>>
>> Y en este punto, estoy perdido por mas que leo el bucle, a ver si alguien
>> me da luz en esta oscuridad en la que me encuentro.
>>
>> Muchas gracias a todos, un saludo cordial
>>
>> les incluyo el bucle:
>>
>>  results1 <- foreach(i=1:rr, .combine = "c", .packages=c("foreach", "irr",
>> "magrittr", "stats", "dplyr")) %dopar% {
>>     smc <- sum(data3[i,1:rr]==max(data3[i,1:rr]))
>>     RECEPTOR <- as.data.frame(matrix(0, ncol=2, nrow = smc))
>>     EMISOR <- data2[i,1]
>>     RECEPTOR[,1] <- data2[which(as.vector(data3[i,])==max(data3[i,])),1]
>> #
>> cluster receptores con mayor coincidencia
>>     for (y in smc) {
>>       RECEPTOR[y,2] <- data1[1:numvar+1] %>%
>> filter(data1$Clus.Multi.OPTIMO
>> %in% c(EMISOR,RECEPTOR[y,1])) %>%
>>         head() %>% kappam.fleiss() %$% value + 1
>>     }
>>     data4[i,1] <- as.numeric(which(data2[,1] ==
>> RECEPTOR[which.max(RECEPTOR[,2]),1]))[1]
>>   }
>>
>>         [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es using r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
> --
>
>
>
> Have a nice day!
>

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es