Hola
La duda que tengo es la siguiente
Quiero coger elementos de unas listas de valores y que haga un bucle con
unas condiciones: que no sean iguales k y z y que si ha hecho la
simulación para, por ejemplo 0.1 y 0.15, no lo haga para 0.15 y 0.1 (es
decir tener combinaciones de esas litas)
La primera condición es fácil, pero con la segunda lo conseguido creando
una lista en txt y que la lea en cada iteración y ponerles condiciones
con if. ¿Hay alguna forma más fácil?
Saludos y gracias
#Por ejemplo
a <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
b <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
for (k in a){
for (z in b){
if(k!=z){
#lo que sea
}}}
[R-es] Selección de elementos de dos listas
4 messages · jmcontreras, Isidro Hidalgo, Carlos Ortega
Prueba con: combn(c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5), 2) Un saludo Isidro Hidalgo Arellano Observatorio del Mercado de Trabajo ConsejerÃa de EconomÃa, Empresas y Empleo http://www.castillalamancha.es/
-----Mensaje original----- De: R-help-es [mailto:r-help-es-bounces en r-project.org] En nombre de José Miguel Contreras Enviado el: miércoles, 11 de noviembre de 2015 11:22 Para: r-help-es en r-project.org Asunto: [R-es] Selección de elementos de dos listas Hola La duda que tengo es la siguiente Quiero coger elementos de unas listas de valores y que haga un bucle con unas condiciones: que no sean iguales k y z y que si ha hecho la
simulación
para, por ejemplo 0.1 y 0.15, no lo haga para 0.15 y 0.1 (es decir tener combinaciones de esas litas) La primera condición es fácil, pero con la segunda lo conseguido creando
una
lista en txt y que la lea en cada iteración y ponerles condiciones con if.
¿Hay
alguna forma más fácil?
Saludos y gracias
#Por ejemplo
a <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
b <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
for (k in a){
for (z in b){
if(k!=z){
#lo que sea
}}}
[[alternative HTML version deleted]]
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
Hola,
Extendiendo un poco más lo que ha comentado Isidro... pero con la misma
idea de base...
a <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
valFor <- as.data.frame(t(combn(a,2)))
for(i in 1:nrow(valFor)) {
k <- valFor[i,1]
z <- valFor[i,2]
....1
}
Incluso el bucle lo podrÃas sustituir por alguna de las *apply...
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 11 de noviembre de 2015, 11:21, José Miguel Contreras <jmcontreras en ugr.es
escribió:
Hola
La duda que tengo es la siguiente
Quiero coger elementos de unas listas de valores y que haga un bucle con
unas condiciones: que no sean iguales k y z y que si ha hecho la
simulación para, por ejemplo 0.1 y 0.15, no lo haga para 0.15 y 0.1 (es
decir tener combinaciones de esas litas)
La primera condición es fácil, pero con la segunda lo conseguido creando
una lista en txt y que la lea en cada iteración y ponerles condiciones
con if. ¿Hay alguna forma más fácil?
Saludos y gracias
#Por ejemplo
a <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
b <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
for (k in a){
for (z in b){
if(k!=z){
#lo que sea
}}}
[[alternative HTML version deleted]]
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Y si necesitaras todos los casos, una función que probablemente conozcas es expand.grid, pero por si acaso la pongo, que es muy útil: vars <- c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5) combinaciones <- expand.grid(vars, vars) combinaciones Un saludo
-----Mensaje original-----
De: R-help-es [mailto:r-help-es-bounces en r-project.org] En nombre de
Carlos Ortega
Enviado el: miércoles, 11 de noviembre de 2015 11:30
Para: José Miguel Contreras
CC: Lista R
Asunto: Re: [R-es] Selección de elementos de dos listas
Hola,
Extendiendo un poco más lo que ha comentado Isidro... pero con la misma
idea de base...
a <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5) valFor <-
as.data.frame(t(combn(a,2)))
for(i in 1:nrow(valFor)) {
k <- valFor[i,1]
z <- valFor[i,2]
....1
}
Incluso el bucle lo podrÃas sustituir por alguna de las *apply...
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 11 de noviembre de 2015, 11:21, José Miguel Contreras
<jmcontreras en ugr.es
escribió:
Hola
La duda que tengo es la siguiente
Quiero coger elementos de unas listas de valores y que haga un bucle
con unas condiciones: que no sean iguales k y z y que si ha hecho la
simulación para, por ejemplo 0.1 y 0.15, no lo haga para 0.15 y 0.1
(es decir tener combinaciones de esas litas)
La primera condición es fácil, pero con la segunda lo conseguido
creando una lista en txt y que la lea en cada iteración y ponerles
condiciones con if. ¿Hay alguna forma más fácil?
Saludos y gracias
#Por ejemplo
a <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
b <-c(0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5)
for (k in a){
for (z in b){
if(k!=z){
#lo que sea
}}}
[[alternative HTML version deleted]]
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es