Re: [R-es] Ayuda con R-Studio condiciones

2018-03-23 Por tema Carlos Ortega
Hola,

Repasa muy bien dos cosas:

   - El nombre de tu variable.
   - en tu primer correo la variable se llama "DIVISION" todo en mayúsculas.
  - Y en lo que has hecho con "ifelse()" pones "División".
  - Para "R" los dos nombres son diferentes.
  - Y cuidado con los acentos...si es posible no los pongas.
   - Si todo lo anterior era consistente (los nombres estaban bien, eran
   iguales en los dos casos).
  - Prueba a ver la clases de la variable.
  - Haz "class(BD$nombre_variable)"
 - Puede que tu variable sea de clase "character" y no puedas
 entonces aplicar una condición (ifelse) pensando que es un número...

Saludos,
Carlos Ortega
www.qualityexcellence.es

El 23 de marzo de 2018, 15:37, Javier Marcuzzi <
javier.ruben.marcu...@gmail.com> escribió:

> Estimada Dayana Muñoz
>
> Leí muy rápido para dar una respuesta acertada y completa, pero en el
> primer if hay un problema, no use tantos ifelse, y el 59 no tiene donde ir,
> porque busca los menores y luego los iguales o mayores a 60.
>
> Javier Rubén Marcuzzi
>
> El 23 de marzo de 2018, 11:12, Dayana Muñoz <dayanaa...@hotmail.com>
> escribió:
>
> > He tratado de usar lo siguiente:
> >
> > a<- ifelse(BD$División>=50 &  BD$División<59,"D",
> >  ifelse (BD$División>=60  &  BD$División<=69,"G",
> >  ifelse (BD$División>=70  &
> > BD$División<=79,"L",
> >  ifelse (BD$División>=80  &
> > BD$División<=89,"M",
> >  ifelse (BD$División>=90
> > &  BD$División<=99,"N","Z")
> >
> >
> >
> > Pero me arroja puros NA como resultado.
> >
> >
> >
> >
> >
> > --
> > *De:* Javier Marcuzzi <javier.ruben.marcu...@gmail.com>
> > *Enviado:* viernes, 23 de marzo de 2018 11:04:16
> > *Para:* Dayana Muñoz
> > *Cc:* r-help-es@r-project.org
> > *Asunto:* Re: [R-es] Ayuda con R-Studio condiciones
> >
> > Estimada Dayana Muñoz
> >
> > Separemos el problema en dos, la primer parte es la condición, para esto
> > puede utilizar la forma que le resulte más apropiada, la segunda parte es
> > utilizar por ejemplo cbind al data.frame original, en otras palabras a
> los
> > datos les pega el resultado de la condición en una nueva columna.
> >
> > Javier Rubén Marcuzzi
> >
> > El 23 de marzo de 2018, 10:54, Dayana Muñoz <dayanaa...@hotmail.com>
> > escribió:
> >
> > Estimados,
> >
> >
> > Junto con saludar, agradeceré si alguien me pueda ayudar con un problema
> > que tengo: Tengo una base de datos llamada "BD", la cuál posee 300
> columnas
> > y 2800 filas, tengo una columna llamada "DIVISION" que se compone de dos
> > dígitos. Lo que quiero hacer, pero no sé como es: Generar una nueva
> columna
> > (adicional), llamada "SECCION" que me clasifique con letras los valores
> > numéricos que tengo en la columna "DIVISION":
> >
> >
> > ID  TAMAÑO x
> > DIVISION  GRUPOCLASE
> >
> > 338576
> >
> >
> >
> > Grande
> >
> > 2
> >
> > 82
> >
> > 821
> >
> > 8219
> >
> > 338421
> >
> >
> >
> > Grande
> >
> > 3
> >
> > 58
> >
> > 581
> >
> > 5813
> >
> > 352821
> >
> >
> >
> > Mediana
> >
> > 2
> >
> > 96
> >
> > 960
> >
> > 9603
> >
> > 340936
> >
> >
> >
> > Grande
> >
> > 1
> >
> > 68
> >
> > 681
> >
> > 6810
> >
> > 340937
> >
> >
> >
> > Grande
> >
> > 3
> >
> > 77
> >
> > 773
> >
> > 7730
> >
> > 340938
> >
> >
> >
> > Grande
> >
> > 3
> >
> > 71
> >
> > 712
> >
> > 7120
> >
> > 353517
> >
> >
> >
> > Grande
> >
> > 1
> >
> > 73
> >
> > 731
> >
> > 7310
> >
> > 340940
> >
> >
> >
> > Grande
> >
> > 3
> >
> > 71
> >
> > 711
> >
> > 7110
> >
> > 340941
> >
> >
> >
> > Grande
>

Re: [R-es] Ayuda con R-Studio condiciones

2018-03-23 Por tema Xavier-Andoni Tibau Alberdi
Crea una funcion y luego la aplicas. La función seria la que ya has creado,
pero cambia  BD$División por x.

Algo así como:
recodificar <- function (x){
ifelse(x>=50 &  x<59,"D",
 ifelse (x>=60  &  x<=69,"G",
 ifelse (x>=70  &  x<=79,"L",
 ifelse (x>=80  &  x<=89,"M",
 ifelse (x>=90  &
x<=99,"N","Z")
}

Y luego la aplicas.

BD$Nueva_variable <- recodificar( BD$División).

 Eso deveria funcionar y no necesitas unir columnas.

Saludos,

——
*Deutsches Zentrum für Luft- und Raumfahrt* e.V. (DLR)
German Aerospace Center

Xavier-Andoni Tibau Alberdi | Scientific Staff
Institute of Data Science | Data Management and Analysis | Mälzerstraße 3 |
07745 Jena
<xavier.ti...@dlr.de>


2018-03-23 15:12 GMT+01:00 Dayana Muñoz <dayanaa...@hotmail.com>:

> He tratado de usar lo siguiente:
>
> a<- ifelse(BD$División>=50 &  BD$División<59,"D",
>  ifelse (BD$División>=60  &  BD$División<=69,"G",
>  ifelse (BD$División>=70  &
> BD$División<=79,"L",
>  ifelse (BD$División>=80  &
> BD$División<=89,"M",
>  ifelse (BD$División>=90
> &  BD$División<=99,"N","Z")))))
>
>
>
> Pero me arroja puros NA como resultado.
>
>
>
>
> 
> De: Javier Marcuzzi <javier.ruben.marcu...@gmail.com>
> Enviado: viernes, 23 de marzo de 2018 11:04:16
> Para: Dayana Muñoz
> Cc: r-help-es@r-project.org
> Asunto: Re: [R-es] Ayuda con R-Studio condiciones
>
> Estimada Dayana Muñoz
>
> Separemos el problema en dos, la primer parte es la condición, para esto
> puede utilizar la forma que le resulte más apropiada, la segunda parte es
> utilizar por ejemplo cbind al data.frame original, en otras palabras a los
> datos les pega el resultado de la condición en una nueva columna.
>
> Javier Rubén Marcuzzi
>
> El 23 de marzo de 2018, 10:54, Dayana Muñoz <dayanaa...@hotmail.com<
> mailto:dayanaa...@hotmail.com>> escribió:
> Estimados,
>
>
> Junto con saludar, agradeceré si alguien me pueda ayudar con un problema
> que tengo: Tengo una base de datos llamada "BD", la cuál posee 300 columnas
> y 2800 filas, tengo una columna llamada "DIVISION" que se compone de dos
> dígitos. Lo que quiero hacer, pero no sé como es: Generar una nueva columna
> (adicional), llamada "SECCION" que me clasifique con letras los valores
> numéricos que tengo en la columna "DIVISION":
>
>
> ID  TAMAÑO x
> DIVISION  GRUPOCLASE
>
>
>
>
>
> Grande
>
> 2
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 3
>
>
>
>
>
>
>
>
>
>
>
> Mediana
>
> 2
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 1
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 3
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 3
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 1
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 3
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 3
>
>
>
>
>
>
>
>
>
>
>
> Grande
>
> 3
>
>
>
>
>
>
>
>
> Por ejemplo:
>
>
> Quiero que me clasifique en la nueva columna llamada SECCION, todas las
> divisiones de 50 a 59 con la letra D, de 60 a 69 con la letra G, las de 70
> a 79 con la letra L, las de 80 a 89 con la letra M, las de 90 a 99 con la
> letra N, de tal forma de conseguir esto:
>
>
>
> ID  TAMAÑO  X   DIVISIONGRUPO   CLASE   SECCION
>
>
> Grande
>
> 2
>
>
>
>
>
>
> M
>
>
> Grande
>
> 3
>
>
>
>
>
>
> D
>
>
> Mediana
>
> 2
>
>
>
>
>
>
> N
>
>
> Grande
>
> 1
>
>
>
>
>
>
> G
>
>
> Grande
>
> 3
>
>
>
>
>
>
> L
>
>
> Grande
>
> 3
>
>
>
>
>
>
> L
>
>
> Grande
>
> 1
>
>
>
>
>
>
> L
>
>
> Grande
>
> 3
>
>
>
>
>
>
> L
>
>
> Grande
>
> 3
>
>
>
>
>
>
> G
>
>
> Grande
>
> 3
>
>
>
>
>
>
> L
>
>
> Agradeceré mucho si alguien me pueda orientar en como conseguir esta nueva
> columna
>
> Saludos!
>
>
>
>
> [[alternative HTML version deleted]]
>
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org<mailto: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
>
>

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] Ayuda con R-Studio condiciones

2018-03-23 Por tema Javier Marcuzzi
Estimada Dayana Muñoz

Separemos el problema en dos, la primer parte es la condición, para esto
puede utilizar la forma que le resulte más apropiada, la segunda parte es
utilizar por ejemplo cbind al data.frame original, en otras palabras a los
datos les pega el resultado de la condición en una nueva columna.

Javier Rubén Marcuzzi

El 23 de marzo de 2018, 10:54, Dayana Muñoz 
escribió:

> Estimados,
>
>
> Junto con saludar, agradeceré si alguien me pueda ayudar con un problema
> que tengo: Tengo una base de datos llamada "BD", la cuál posee 300 columnas
> y 2800 filas, tengo una columna llamada "DIVISION" que se compone de dos
> dígitos. Lo que quiero hacer, pero no sé como es: Generar una nueva columna
> (adicional), llamada "SECCION" que me clasifique con letras los valores
> numéricos que tengo en la columna "DIVISION":
>
>
> ID  TAMAÑO x
> DIVISION  GRUPOCLASE
>
> 338576
>
>
>
> Grande
>
> 2
>
> 82
>
> 821
>
> 8219
>
> 338421
>
>
>
> Grande
>
> 3
>
> 58
>
> 581
>
> 5813
>
> 352821
>
>
>
> Mediana
>
> 2
>
> 96
>
> 960
>
> 9603
>
> 340936
>
>
>
> Grande
>
> 1
>
> 68
>
> 681
>
> 6810
>
> 340937
>
>
>
> Grande
>
> 3
>
> 77
>
> 773
>
> 7730
>
> 340938
>
>
>
> Grande
>
> 3
>
> 71
>
> 712
>
> 7120
>
> 353517
>
>
>
> Grande
>
> 1
>
> 73
>
> 731
>
> 7310
>
> 340940
>
>
>
> Grande
>
> 3
>
> 71
>
> 711
>
> 7110
>
> 340941
>
>
>
> Grande
>
> 3
>
> 69
>
> 691
>
> 6910
>
> 340942
>
>
>
> Grande
>
> 3
>
> 73
>
> 731
>
> 7310
>
>
> Por ejemplo:
>
>
> Quiero que me clasifique en la nueva columna llamada SECCION, todas las
> divisiones de 50 a 59 con la letra D, de 60 a 69 con la letra G, las de 70
> a 79 con la letra L, las de 80 a 89 con la letra M, las de 90 a 99 con la
> letra N, de tal forma de conseguir esto:
>
>
>
> ID  TAMAÑO  X   DIVISIONGRUPO   CLASE   SECCION
> 338576
>
> Grande
>
> 2
>
> 82
>
> 821
>
> 8219
> M
> 338421
>
> Grande
>
> 3
>
> 58
>
> 581
>
> 5813
> D
> 352821
>
> Mediana
>
> 2
>
> 96
>
> 960
>
> 9603
> N
> 340936
>
> Grande
>
> 1
>
> 68
>
> 681
>
> 6810
> G
> 340937
>
> Grande
>
> 3
>
> 77
>
> 773
>
> 7730
> L
> 340938
>
> Grande
>
> 3
>
> 71
>
> 712
>
> 7120
> L
> 353517
>
> Grande
>
> 1
>
> 73
>
> 731
>
> 7310
> L
> 340940
>
> Grande
>
> 3
>
> 71
>
> 711
>
> 7110
> L
> 340941
>
> Grande
>
> 3
>
> 69
>
> 691
>
> 6910
> G
> 340942
>
> Grande
>
> 3
>
> 73
>
> 731
>
> 7310
> L
>
>
> Agradeceré mucho si alguien me pueda orientar en como conseguir esta nueva
> columna
>
> Saludos!
>
>
>
>
> [[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


Re: [R-es] Ayuda con R-Studio condiciones

2018-03-23 Por tema Carlos Ortega
Hola,

Mira la función "ifelse()" que te ayudará con esto...

Gracias,
Carlos Ortega
www.qualityexcellence.es


El 23 de marzo de 2018, 14:54, Dayana Muñoz 
escribió:

> Estimados,
>
>
> Junto con saludar, agradeceré si alguien me pueda ayudar con un problema
> que tengo: Tengo una base de datos llamada "BD", la cuál posee 300 columnas
> y 2800 filas, tengo una columna llamada "DIVISION" que se compone de dos
> dígitos. Lo que quiero hacer, pero no sé como es: Generar una nueva columna
> (adicional), llamada "SECCION" que me clasifique con letras los valores
> numéricos que tengo en la columna "DIVISION":
>
>
> ID  TAMAÑO x
> DIVISION  GRUPOCLASE
>
> 338576
>
>
>
> Grande
>
> 2
>
> 82
>
> 821
>
> 8219
>
> 338421
>
>
>
> Grande
>
> 3
>
> 58
>
> 581
>
> 5813
>
> 352821
>
>
>
> Mediana
>
> 2
>
> 96
>
> 960
>
> 9603
>
> 340936
>
>
>
> Grande
>
> 1
>
> 68
>
> 681
>
> 6810
>
> 340937
>
>
>
> Grande
>
> 3
>
> 77
>
> 773
>
> 7730
>
> 340938
>
>
>
> Grande
>
> 3
>
> 71
>
> 712
>
> 7120
>
> 353517
>
>
>
> Grande
>
> 1
>
> 73
>
> 731
>
> 7310
>
> 340940
>
>
>
> Grande
>
> 3
>
> 71
>
> 711
>
> 7110
>
> 340941
>
>
>
> Grande
>
> 3
>
> 69
>
> 691
>
> 6910
>
> 340942
>
>
>
> Grande
>
> 3
>
> 73
>
> 731
>
> 7310
>
>
> Por ejemplo:
>
>
> Quiero que me clasifique en la nueva columna llamada SECCION, todas las
> divisiones de 50 a 59 con la letra D, de 60 a 69 con la letra G, las de 70
> a 79 con la letra L, las de 80 a 89 con la letra M, las de 90 a 99 con la
> letra N, de tal forma de conseguir esto:
>
>
>
> ID  TAMAÑO  X   DIVISIONGRUPO   CLASE   SECCION
> 338576
>
> Grande
>
> 2
>
> 82
>
> 821
>
> 8219
> M
> 338421
>
> Grande
>
> 3
>
> 58
>
> 581
>
> 5813
> D
> 352821
>
> Mediana
>
> 2
>
> 96
>
> 960
>
> 9603
> N
> 340936
>
> Grande
>
> 1
>
> 68
>
> 681
>
> 6810
> G
> 340937
>
> Grande
>
> 3
>
> 77
>
> 773
>
> 7730
> L
> 340938
>
> Grande
>
> 3
>
> 71
>
> 712
>
> 7120
> L
> 353517
>
> Grande
>
> 1
>
> 73
>
> 731
>
> 7310
> L
> 340940
>
> Grande
>
> 3
>
> 71
>
> 711
>
> 7110
> L
> 340941
>
> Grande
>
> 3
>
> 69
>
> 691
>
> 6910
> G
> 340942
>
> Grande
>
> 3
>
> 73
>
> 731
>
> 7310
> L
>
>
> Agradeceré mucho si alguien me pueda orientar en como conseguir esta nueva
> columna
>
> Saludos!
>
>
>
>
> [[alternative HTML version deleted]]
>
>
> ___
> R-help-es mailing list
> R-help-es@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@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es