Hola a todos,Muchas gracias por las propuestas. He probado las tres y han funcionado perfectamente.saludos,Fernando
De: Javier Marcuzzi <javier.ruben.marcu...@gmail.com> Para: Fernando Sanchez <fernandsan...@yahoo.es> CC: "r-help-es@r-project.org" <r-help-es@r-project.org> Enviado: Miércoles 7 de febrero de 2018 13:46 Asunto: Re: [R-es] Optimizar código Estimado Fernando Sanchez Creo que son buenas las ayudas que te han brindado, pero aparte de estas siempre puedes realizar una compilación de un código que no está optimizado, puedes ver el siguiente hipervínculo http://homepage.divms.uiowa.edu/~luke/R/compiler/compiler.pdf Javier Rubén Marcuzzi El 6 de febrero de 2018, 19:15, Fernando Sanchez via R-help-es <r-help-es@r-project.org> escribió: Hola a todos, Os pongo aquí debajo un pequeño fragmento de código. Resulta que dispongo de una CADENA que tiene dos columnas. Una con palabras y la otra que dice si es bueno o malo. En otra variable tengo una LISTA. Quiero cruzar todas las palabras de la lista con todas las de la cadena y cuando alguna coincida, que me indique en qué fila está y también si la palabra es "buena" o "mala". El código que os pongo más abajo funciona, pero es poco eficiente cuando las listas son más largas. Se os ocurre otra forma de programarlo más elegantemente en R. CADENA_1<-c("caliente","frío", "gordo","flaco")CADENA_2<-c(" bueno","malo","bueno","malo") CADENA<-rbind(CADENA_1,CADENA_ 2)CADENA<-t(CADENA)LISTA<-c(" caliente","perro","flaco"," gato","coche") for (i in 1:nrow(CADENA)) {for (j in 1:length(LISTA)) {if(toString(LISTA[j])== toString(CADENA[i,1])) {print(paste("fila:",j,CADENA[ i,2],sep=" "))}}} Un saludo y muchas gracias a todos. [[alternative HTML version deleted]] ______________________________ _________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/ listinfo/r-help-es [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es