Re: [R-es] Encontrar un dato y añadirlo a otra columna

2020-09-23 Por tema Samura .
perfecto, pero en realidad habia simplificado el ejemplo
ya que no siempre se encuentra en la misma posicion
(y a veces es AV en mayuscula, otra en minuscula, otra entre parentesis etc..)

pero con sacarlo siguiendo este formato me vale, luego lo adapto a cada 
circunstancia

nombre1

AV 23
PEPE 34
QWE
  45 pepe  AV 24
WERRR ER34
q AV 25  

De: Marcelino de la Cruz Rot 
Enviado: miércoles, 23 de septiembre de 2020 7:49
Para: Samura . ; Juan Carlos Lopez Mesa 

Cc: r-help-es@r-project.org 
Asunto: Re: [R-es] Encontrar un dato y añadirlo a otra columna

Hola:
Para este ejemplo concreto, es bastante sencillo. Por ejemplo:

sp <-strsplit(df$nombre1, " ")
df$Nombre1_numero<-sapply(sp, function(x) ifelse(x[1]=="AV",
as.numeric(x[2]), NA))

Saludos,
Marcelino

El 23/09/2020 a las 2:14, Samura . escribió:
> Con parse_number sacaria todos los numeros de la columna,
> pero lo que busco es sacar solo los que empiezan por AV y descartar el resto.
>
> De todas maneras muchas gracias, le voy a dar otra vuelta.
>
> 
> De: Juan Carlos Lopez Mesa 
> Enviado: martes, 22 de septiembre de 2020 21:32
> Para: Samura . 
> Cc: r-help-es@r-project.org 
> Asunto: Re: [R-es] Encontrar un dato y a�adirlo a otra columna
>
> Hola,
>
> prueba con esto
>
> df %>% mutate(var = parse_number(nombre1))
>
>
> Saludos
>
> El mar., 22 sept. 2020 a las 15:46, Samura . 
> (mailto:tontit...@hotmail.com>>) escribi�:
> Buenas,
> A ver si alguien sabe como hacer lo siguiente:
>
> Tengo un df con letras y numeros, quiero que si me detecta un numero en 
> concreto me a�ada dicho numero en otra columna.
>
> Algo asi
>
> df<-data.frame(c("AV 23","PEPE 34","QWE","AV 24","WERRR ER34","AV 25"))
> colnames(df)<-c("nombre1")
>
> df[grepl("AV 23",df$nombre1), "Nombre1_numero"]= "23"
> df[grepl("AV 24",df$nombre1), "Nombre1_numero"]= "24"
> df[grepl("AV 25",df$nombre1), "Nombre1_numero"]= "25"
> df
>
>
> nombre1  Nombre1_numero
> AV 23 23
> PEPE 34NA
> QWE  NA
> AV 24  24
> WERRR ER34   NA
> AV 25 25
>
> osea, busca AV 23, 24, 25 en la columna, si lo encuentras pon el numero en 
> otra columna, el resto de datos NA
>
> como son muchos, para no repetir siempre lo mismo habia pensado en algo asi
>
>
> df[grepl("AV \\d{2}",df$nombre1), "Nombre1_numero"]= "\\d{2}"
>
> pero no se como poner ese "\\d{2}" ultimo para que me coloque el numero.
>
> �Alguna idea?
>
>  [[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
>
> �Esta transmisi�n electr�nica es propiedad de la Universidad Nacional de 
> Colombia, su contenido es confidencial y �nicamente lo puede recibir la 
> persona o entidad a quien va dirigido. Se proh�be: Usar esta informaci�n para 
> prop�sitos ajenos a la Universidad, divulgar su contenido a personas 
> externas, reproducir total y/o parcialmente la informaci�n contenida. No se 
> asume responsabilidad sobre informaci�n, opiniones o criterios contenidos en 
> este correo electr�nico que no est�n relacionados con la Universidad. Si 
> usted no es el destinatario de este correo electr�nico, se le notifica que el 
> uso de esta informaci�n, as� como su difusi�n, distribuci�n o copia, est� 
> estrictamente prohibida, por favor notifique al remitente inmediatamente por 
> este mismo medio y elimine lo antes posible este mensaje. La Universidad 
> Nacional de Colombia, identificada con NIT 899.999.063, con domicilio 
> principal en la ciudad de Bogot� D.C. en la Carrera 45 # 26-85 Edif. Uriel 
> Guti�rrez Bogot� D.C., Colombia y con tel�fono (+57 1) 316 50 00, en 
> cumplimiento de la Ley 1581 de 2012 y el art�culo 15 del Decreto 1377 de 
> 2013, como responsable del tratamiento de informaci�n de datos personales, 
> desea informar a todas las personas cuyos datos personales se encuentran en 
> nuestras bases de datos, que los mismos se encuentran bajo medidas que 
> garantizan la seguridad, confidencialidad e integridad, y su tratamiento se 
> realiza con base en nuestra Pol�tica de Tratamiento de Datos Personales, esta 
> informaci�n se podr� consultar en la p�gina web 
> unal.edu.co<http://www.unal.edu.co/> o ser s

[R-es] Encontrar un dato y añadirlo a otra columna

2020-09-22 Por tema Samura .
Buenas,
A ver si alguien sabe como hacer lo siguiente:

Tengo un df con letras y numeros, quiero que si me detecta un numero en 
concreto me a�ada dicho numero en otra columna.

Algo asi

df<-data.frame(c("AV 23","PEPE 34","QWE","AV 24","WERRR ER34","AV 25"))
colnames(df)<-c("nombre1")

df[grepl("AV 23",df$nombre1), "Nombre1_numero"]= "23"
df[grepl("AV 24",df$nombre1), "Nombre1_numero"]= "24"
df[grepl("AV 25",df$nombre1), "Nombre1_numero"]= "25"
df


nombre1  Nombre1_numero
AV 23 23
PEPE 34NA
QWE  NA
AV 24  24
WERRR ER34   NA
AV 25 25

osea, busca AV 23, 24, 25 en la columna, si lo encuentras pon el numero en otra 
columna, el resto de datos NA

como son muchos, para no repetir siempre lo mismo habia pensado en algo asi


df[grepl("AV \\d{2}",df$nombre1), "Nombre1_numero"]= "\\d{2}"

pero no se como poner ese "\\d{2}" ultimo para que me coloque el numero.

�Alguna idea?

[[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] expresiones regulares

2020-09-22 Por tema Samura .
Muchas gracias

aunque no era lo que buscaba pq la estructura de los datos es cambiante y no se 
le puede aplicar una funcion
"fija".
Al final estoy usando gsub caso a caso.





De: Eric 
Enviado: domingo, 20 de septiembre de 2020 20:41
Para: Carlos Ortega ; Samura . 

Cc: r-help-es@r-project.org 
Asunto: Re: [R-es] expresiones regulares

Al parecer s�lo hay que eliminar los espacios, no ?



On 20-09-20 13:32, Carlos Ortega wrote:
> Hola,
>
> Extraer los tres primeros caracteres de cada cadena se puede hacer as�:
>
>> library(stringr)
>>
>> mis_str <-
> c('1.3ptd','1.3ptdm','4.4ptdm23j','7.716s','1.4hola','1.4hola.hola','5.5v6','5.5v6sdp','5.5v10sdp')
>> res_out <- vector()
>> for(i in 1:length(mis_str)) {
> +   wrd_tmp <- mis_str[i]
> +   pri_parte <- str_sub(wrd_tmp, 1, 3)
> +   sec_parte <- str_sub(wrd_tmp, 4, nchar(wrd_tmp))
> +   res_tmp <- c(pri_parte,sec_parte)
> +   res_out <- c(res_out, res_tmp)
> + }
>> paste0(res_out, collapse = " ")
> [1] "1.3 ptd 1.3 ptdm 4.4 ptdm23j 7.7 16s 1.4 hola 1.4 hola.hola 5.5 v6 5.5
> v6sdp 5.5 v10sdp"
> Pero es que este es el patr�n claro que veo de primeras. Hay alg�n otro
> patr�n m�s... sobre lo que se guarda en "sec_parte", pero siguiendo esta
> idea puedes tratarlo.
>
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es<http://www.qualityexcellence.es>
>
>
> El dom., 20 sept. 2020 a las 17:43, Samura . ()
> escribi�:
>
>> Hola a tod@s
>>
>> �alquien sabria como convertir estas frases con expresiones regulares?
>>
>> 1.3ptd  -> 1.3 ptd
>> 1.3ptdm -> 1.3 ptdm
>> 4.4ptdm23j -> 4.4 ptdm 23j
>> 7.716s -> 7.7 16s
>> 1.4hola -> 1.4 hola
>> 1.4hola.hola -> 1.4 hola.hola
>> 5.5v6  -> 5.5 v6
>> 5.5v6sdp  -> 5.5 v6 sdp
>> 5.5v10sdp  -> 5.5 v10 sdp
>>
>> de forma que esta frase
>>
>> "hola 1.3ptd 1.3ptdm 4.4ptdm23j 7.716s 1.4hola pepe 1.4hola.hola 5.5v6
>> 5.5v6sdp 5.5v10sdp"
>>
>>
>> quedara as�
>>
>> "hola 1.3 ptd 1.3 ptdm 4.4 ptdm 23j 7.7 16s 1.4 hola pepe 1.4 hola.hola
>> 5.5 v6 5.5 v6 sdp 5.5 v10 sdp"
>>
>> estoy probando con gsub y no doy con la tecla.
>>
>> Lo mismo hay una forma mas simple de cambiarlo y no usando las expresiones
>> regulares.
>>
>>
>>
>>  [[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


[R-es] expresiones regulares

2020-09-20 Por tema Samura .
Hola a tod@s

�alquien sabria como convertir estas frases con expresiones regulares?

1.3ptd  -> 1.3 ptd
1.3ptdm -> 1.3 ptdm
4.4ptdm23j -> 4.4 ptdm 23j
7.716s -> 7.7 16s
1.4hola -> 1.4 hola
1.4hola.hola -> 1.4 hola.hola
5.5v6  -> 5.5 v6
5.5v6sdp  -> 5.5 v6 sdp
5.5v10sdp  -> 5.5 v10 sdp

de forma que esta frase

"hola 1.3ptd 1.3ptdm 4.4ptdm23j 7.716s 1.4hola pepe 1.4hola.hola 5.5v6 5.5v6sdp 
5.5v10sdp"


quedara as�

"hola 1.3 ptd 1.3 ptdm 4.4 ptdm 23j 7.7 16s 1.4 hola pepe 1.4 hola.hola 5.5 v6 
5.5 v6 sdp 5.5 v10 sdp"

estoy probando con gsub y no doy con la tecla.

Lo mismo hay una forma mas simple de cambiarlo y no usando las expresiones 
regulares.



[[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] Cambiar datos de un DF

2020-09-13 Por tema Samura .
Genial!
Gracias!



De: Marcelino de la Cruz Rot 
Enviado: domingo, 13 de septiembre de 2020 12:50
Para: Samura . ; r-help-es@r-project.org 

Asunto: Re: [R-es] Cambiar datos de un DF

Hola:
Si codificas "col1" como un factor, lo puedes cambiar todo de una vez
renombrando los niveles correspondientes:

 > df$col1<-as.factor(df$col1)

 > df$col1
  [1] uno   dos   3 4 cinco 6 siete 8 9 diez
Levels: 3 4 6 8 9 cinco diez dos siete uno

 > levels(df$col1)[1:5] <- c("tres","cuatro","seis","ocho","nueve")
 > df
  col1 col2
1 uno1
2 dos2
3tres3
4  cuatro4
5   cinco5
6seis6
7   siete7
8ocho8
9   nueve    9
10   diez   10
 >


Saludos,

Marcelino


El 13/09/2020 a las 14:37, Samura . escribió:
> Hola a tod@s
>
> �C�mo puedo cambiar varios datos por otros en un data frame?
>
> Por ejemplo
>
> col1<-c("uno","dos",3,4,"cinco",6,"siete",8,9,"diez")
> col2<-c(1,2,3,4,5,6,7,8,9,10)
>
> df<-data.frame(col1,col2)
> df$col1<-as.character(df$col1)
> df
>
>  col1 col2
>  uno1
>  dos2
>33
>44
>cinco5
>66
>siete7
>88
>99
>  diez   10
>
> Ahora quiero cambiar por ejemplo los n�meros por letras (o cualquier otro 
> dato en cualquier otro ejemplo)
>
> df$col1[df$col1==3]<-"tres"
> df$col1[df$col1==4]<-"cuatro"
> df$col1[df$col1==6]<-"seis"
> df$col1[df$col1==8]<-"ocho"
> df$col1[df$col1==9]<-"nueve"
>
> �No hay otra forma de ponerlo para no ir uno a uno?
>
> he probado con
>
> df$col1[df$col1==c(3,4,6)]<-c("tres","cuatro","seis")
>
> pero nada, pq creo que tendr�a q ponerlos todos, solo quiero poner los que 
> quiero cambiar.
>
> Gracias!
>
>
>
>[[alternative HTML version deleted]]
>
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es


--
Marcelino de la Cruz Rot
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España


[[alternative HTML version deleted]]

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


[R-es] Cambiar datos de un DF

2020-09-13 Por tema Samura .
Hola a tod@s

�C�mo puedo cambiar varios datos por otros en un data frame?

Por ejemplo

col1<-c("uno","dos",3,4,"cinco",6,"siete",8,9,"diez")
col2<-c(1,2,3,4,5,6,7,8,9,10)

df<-data.frame(col1,col2)
df$col1<-as.character(df$col1)
df

col1 col2
uno1
dos2
  33
  44
  cinco5
  66
  siete7
  88
  99
diez   10

Ahora quiero cambiar por ejemplo los n�meros por letras (o cualquier otro dato 
en cualquier otro ejemplo)

df$col1[df$col1==3]<-"tres"
df$col1[df$col1==4]<-"cuatro"
df$col1[df$col1==6]<-"seis"
df$col1[df$col1==8]<-"ocho"
df$col1[df$col1==9]<-"nueve"

�No hay otra forma de ponerlo para no ir uno a uno?

he probado con

df$col1[df$col1==c(3,4,6)]<-c("tres","cuatro","seis")

pero nada, pq creo que tendr�a q ponerlos todos, solo quiero poner los que 
quiero cambiar.

Gracias!



[[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] aplicar codigo

2020-09-10 Por tema Samura .
Solucionado entonces,
muchas gracias

De: R-help-es  en nombre de Marcelino de la 
Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 19:20
Para: David Mateos 
Cc: r-help-es@r-project.org 
Asunto: Re: [R-es] aplicar codigo

Ya s� a qu� se debe:
En vuestro R, la funci�n data.frame transforma autom�ticamente los
vectores de tipo /character/ a tipo/factor/.
Con un factor, sapply devuelve el n�mero del nivel correspondiente:

 > col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
'x1','x2', 'x4')

 > sapply(col1, function(x) ifelse(x%in%c("x1","x2","x3"),
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
 x1 x2x11 x1x33 x1
x4 x5x35 x1 x2 x4
"prueba12" "prueba12"  "x11" "prueba12"  "x33" "prueba12"
"prueba2"  "prueba2"  "x35" "prueba12" "prueba12"  "prueba2"

 > sapply(factor(col1), function(x) ifelse(x%in%c("x1","x2","x3"),
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
  [1] "prueba12" "prueba12" "2""prueba12" "4" "prueba12"
"prueba2"  "prueba2"  "5""prueba12" "prueba12" "prueba2"
 >




El 10/09/2020 a las 20:35, David Mateos escribi�:
> Hola,
> a m� me sucede como a Samura y no consigo entender de donde salen esos
> "2", "4" y "5" para df1. �Alguien puede arrojar luz?
> Tanto con la versi�n 3.6 como con la 4.0.2
>
> Si me funciona con
> ```
> transforma <- function(df) {
>   apply(df, 1, function(x)
> ifelse(x%in%c("x1","x2","x3"),
>"prueba12",
>ifelse(x%in%c("x4","x5","x6"),
>   "prueba2",x)
>    )
> )
> }
> df1$transformacion <- transforma(df1)
> ```
> Un saludo,
> David
>
> Enviado desde Outlook <http://aka.ms/weboutlook>
>
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 19:15
> *Para:* Samura . ; r-help-es@r-project.org
> 
> *Asunto:* Re: [R-es] aplicar codigo
> Yo copio y pego este c�digo y me sale correctamente. Se me ocurre que
> pueda deberse a la versi�n de R �cu�l usas?
>
>
> El 10/09/2020 a las 17:51, Samura . escribi�:
> > Gracias por las respuestas.
> >
> > Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
> > Ahora con el c�digo de Marcelino tampoco me sale.
> >
> > col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> > 'x1','x2', 'x4')
> > col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> > col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> > 'x35','x2','x2', 'x4','x6', 'x5')
> >
> > df1<-data.frame(col1)
> > df2<-data.frame(col2)
> > df3<-data.frame(col3)
> >
> > transforma <- function(df) sapply(df, function(x)
> > ifelse(x%in%c("x1","x2","x3"),
> >  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
> >
> > transforma(df1)
> > col1
> > [1,] "prueba12"
> > [2,] "prueba12"
> > [3,] "2"
> > [4,] "prueba12"
> > [5,] "4"
> > [6,] "prueba12"
> > [7,] "prueba2"
> > [8,] "prueba2"
> > [9,] "5"
> > [10,] "prueba12"
> > [11,] "prueba12"
> > [12,] "prueba2"
> >
> > �Alguna idea de pq me sale 2, 4, 5?
> > 
> > *De:* R-help-es  en nombre de
> > Marcelino de la Cruz Rot 
> > *Enviado:* jueves, 10 de septiembre de 2020 9:36
> > *Para:* r-help-es@r-project.org 
> > *Asunto:* Re: [R-es] aplicar codigo
> > Hola:
> > Como dice Carlos, algo as�, por ejemplo:
> >
> > transforma <- function(df) sapply(df, function(x)
> > ifelse(x%in%c("x1","x2","x3"),
> > "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
> >
> >
> >  > transforma(df1)
> >col1
> >   [1,] "prueba1"
> >   [2,

Re: [R-es] aplicar codigo

2020-09-10 Por tema Samura .
R version 3.6.3 (2020-02-29) -- "Holding the Windsock"
Rstudio Version 1.2.1335

Voy a actualizarlo todo a ver que pasa.

De: Marcelino de la Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 17:15
Para: Samura . ; r-help-es@r-project.org 

Asunto: Re: [R-es] aplicar codigo

Yo copio y pego este c�digo y me sale correctamente. Se me ocurre que
pueda deberse a la versi�n de R �cu�l usas?


El 10/09/2020 a las 17:51, Samura . escribi�:
> Gracias por las respuestas.
>
> Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
> Ahora con el c�digo de Marcelino tampoco me sale.
>
> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> 'x1','x2', 'x4')
> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2', 'x4','x6', 'x5')
>
> df1<-data.frame(col1)
> df2<-data.frame(col2)
> df3<-data.frame(col3)
>
> transforma <- function(df) sapply(df, function(x)
> ifelse(x%in%c("x1","x2","x3"),
>  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
> transforma(df1)
> col1
> [1,] "prueba12"
> [2,] "prueba12"
> [3,] "2"
> [4,] "prueba12"
> [5,] "4"
> [6,] "prueba12"
> [7,] "prueba2"
> [8,] "prueba2"
> [9,] "5"
> [10,] "prueba12"
> [11,] "prueba12"
> [12,] "prueba2"
>
> �Alguna idea de pq me sale 2, 4, 5?
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 9:36
> *Para:* r-help-es@r-project.org 
> *Asunto:* Re: [R-es] aplicar codigo
> Hola:
> Como dice Carlos, algo as�, por ejemplo:
>
> transforma <- function(df) sapply(df, function(x)
> ifelse(x%in%c("x1","x2","x3"),
> "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
>
>  > transforma(df1)
>col1
>   [1,] "prueba1"
>   [2,] "prueba1"
>   [3,] "x11"
>   [4,] "prueba1"
>   [5,] "x33"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
>
>
>  > transforma(df2)
>   col2
> [1,] "x12"
> [2,] "prueba2"
> [3,] "prueba2"
> [4,] "x771"
> [5,] "prueba2"
> [6,] "prueba1"
>
>
>  > transforma(df3)
>col3
>   [1,] "x7"
>   [2,] "prueba1"
>   [3,] "prueba2"
>   [4,] "prueba2"
>   [5,] "x111"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
> [13,] "prueba2"
> [14,] "prueba2"
>
> Saludos,
>
> Marcelino
>
> El 10/09/2020 a las 9:41, Carlos Ortega escribi�:
> > Hola,
> > Si lo estoy entendiendo bien, lo que tienes que crearte es una funci�n.
> > A la funci�n le pasar�as unos par�metros (las columnas y el dataframe al
> > que a�adir la transformaci�n), y en el cuerpo de la funci�n haces esos
> > c�lculos.
> >
> > Gracias,
> > Carlos.
> >
> >
> >
> > Gracias,
> > Carlos.
> >
> > El jue., 10 sept. 2020 a las 3:55, Samura . ()
> > escribi�:
> >
> >> Hola,
> >> me gustar�a hacer algo como en el siguiente ejemplo
> >>
> >> A un df a�adirle una columna que es la transformaci�n de otra,
> >> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
> >> todo lo que sea x4,x5,x6 lo llamo prueba 2
> >> el resto de x las dejo como est�n.
> >>
> >> Ser�a algo as�
> >>
> >> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> >> 'x1','x2', 'x4')
> >> df1<-data.frame(col1)
> >> attach(df1)
> >>
> >> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
> >> "prueba1",
> >> ifelse(col1 == "x4"|col1 == "x5"| col1
> == "x6",
> >> "prueba2", col1))
> >>
> >> detach(df1)
> >> df1
> >>
> >> pero ahora en vez de un df tengo varios
> >>
> >> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> >> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2',
> >> 'x4','x6', 'x5')
> >> df2<-data.frame(col2)
> >> df3<-data.frame(col3)
> >>
> >> �c�mo puedo aplicar el c�digo al resto de los df sin tener que
> repetirlo?
> >>
> >>
> >>
> >>  [[alternative HTML version deleted]]
> >>
> >> ___
> >> R-help-es mailing list
> >> R-help-es@r-project.org
> >> https://stat.ethz.ch/mailman/listinfo/r-help-es
> <https://stat.ethz.ch/mailman/listinfo/r-help-es>
> >>
> >
>
> --
> Marcelino de la Cruz Rot
> Depto. de Biolog�a y Geolog�a
> F�sica y Qu�mica Inorg�nica
> Universidad Rey Juan Carlos
> M�stoles Espa�a
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
> <https://stat.ethz.ch/mailman/listinfo/r-help-es>


--
Marcelino de la Cruz Rot
Depto. de Biolog�a y Geolog�a
F�sica y Qu�mica Inorg�nica
Universidad Rey Juan Carlos
M�stoles Espa�a


[[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] aplicar codigo

2020-09-10 Por tema Samura .
Gracias por las respuestas.

Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
Ahora con el c�digo de Marcelino tampoco me sale.

col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35', 'x1','x2', 
'x4')
col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2', 
'x4','x6', 'x5')

df1<-data.frame(col1)
df2<-data.frame(col2)
df3<-data.frame(col3)

transforma <- function(df) sapply(df, function(x)
ifelse(x%in%c("x1","x2","x3"),
   "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))

transforma(df1)
col1
[1,] "prueba12"
[2,] "prueba12"
[3,] "2"
[4,] "prueba12"
[5,] "4"
[6,] "prueba12"
[7,] "prueba2"
[8,] "prueba2"
[9,] "5"
[10,] "prueba12"
[11,] "prueba12"
[12,] "prueba2"

�Alguna idea de pq me sale 2, 4, 5?

De: R-help-es  en nombre de Marcelino de la 
Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 9:36
Para: r-help-es@r-project.org 
Asunto: Re: [R-es] aplicar codigo

Hola:
Como dice Carlos, algo as�, por ejemplo:

transforma <- function(df) sapply(df, function(x)
ifelse(x%in%c("x1","x2","x3"),
"prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))


 > transforma(df1)
   col1
  [1,] "prueba1"
  [2,] "prueba1"
  [3,] "x11"
  [4,] "prueba1"
  [5,] "x33"
  [6,] "prueba1"
  [7,] "prueba2"
  [8,] "prueba2"
  [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"


 > transforma(df2)
  col2
[1,] "x12"
[2,] "prueba2"
[3,] "prueba2"
[4,] "x771"
[5,] "prueba2"
[6,] "prueba1"


 > transforma(df3)
   col3
  [1,] "x7"
  [2,] "prueba1"
  [3,] "prueba2"
  [4,] "prueba2"
  [5,] "x111"
  [6,] "prueba1"
  [7,] "prueba2"
  [8,] "prueba2"
  [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"
[13,] "prueba2"
[14,] "prueba2"

Saludos,

Marcelino

El 10/09/2020 a las 9:41, Carlos Ortega escribi�:
> Hola,
> Si lo estoy entendiendo bien, lo que tienes que crearte es una funci�n.
> A la funci�n le pasar�as unos par�metros (las columnas y el dataframe al
> que a�adir la transformaci�n), y en el cuerpo de la funci�n haces esos
> c�lculos.
>
> Gracias,
> Carlos.
>
>
>
> Gracias,
> Carlos.
>
> El jue., 10 sept. 2020 a las 3:55, Samura . ()
> escribi�:
>
>> Hola,
>> me gustar�a hacer algo como en el siguiente ejemplo
>>
>> A un df a�adirle una columna que es la transformaci�n de otra,
>> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
>> todo lo que sea x4,x5,x6 lo llamo prueba 2
>> el resto de x las dejo como est�n.
>>
>> Ser�a algo as�
>>
>> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
>> 'x1','x2', 'x4')
>> df1<-data.frame(col1)
>> attach(df1)
>>
>> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
>> "prueba1",
>> ifelse(col1 == "x4"|col1 == "x5"| col1 == "x6",
>> "prueba2", col1))
>>
>> detach(df1)
>> df1
>>
>> pero ahora en vez de un df tengo varios
>>
>> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
>> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2',
>> 'x4','x6', 'x5')
>> df2<-data.frame(col2)
>> df3<-data.frame(col3)
>>
>> �c�mo puedo aplicar el c�digo al resto de los df sin tener que repetirlo?
>>
>>
>>
>>  [[alternative HTML version deleted]]
>>
>> ___
>> R-help-es mailing list
>> R-help-es@r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>

--
Marcelino de la Cruz Rot
Depto. de Biolog�a y Geolog�a
F�sica y Qu�mica Inorg�nica
Universidad Rey Juan Carlos
M�stoles Espa�a

___
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


[R-es] aplicar codigo

2020-09-09 Por tema Samura .
Hola,
me gustar�a hacer algo como en el siguiente ejemplo

A un df a�adirle una columna que es la transformaci�n de otra,
en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
todo lo que sea x4,x5,x6 lo llamo prueba 2
el resto de x las dejo como est�n.

Ser�a algo as�

col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35', 'x1','x2', 
'x4')
df1<-data.frame(col1)
attach(df1)

df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3", "prueba1",
   ifelse(col1 == "x4"|col1 == "x5"| col1 == "x6", 
"prueba2", col1))

detach(df1)
df1

pero ahora en vez de un df tengo varios

col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2', 
'x4','x6', 'x5')
df2<-data.frame(col2)
df3<-data.frame(col3)

�c�mo puedo aplicar el c�digo al resto de los df sin tener que repetirlo?



[[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] número de items para para sustituir no es un múltiplo de la longitud del reemplazo

2020-09-07 Por tema Samura .
Me autorespondo

datos<-df %>%
  mutate_if(is.factor, str_to_title)
datos

Estas 3 d�as programando en otro lenguaje y al volver a R te vuelves loco.

____
De: Samura .
Enviado: domingo, 6 de septiembre de 2020 10:29
Para: Lista R 
Asunto: n�mero de items para para sustituir no es un m�ltiplo de la longitud 
del reemplazo

Hola,

quiero pasar todas las palabras de un df a tipo t�tulo, es decir, la primera 
letra de cada palabra en may�scula y el resto en min�scula.

El caso es que haciendo esto, realiza el cambio, pero me sale el siguiente 
aviso y no consigo quitarlo

1: In opts["locale"] <- locale :n�mero de items para para sustituir no es un 
m�ltiplo de la longitud del reemplazo

library(tidyverse)

col1 <- c('', 'aaa b', 'ccc', 'aa AAA aa BBB')
col2 <- c('', 'b', 'bb', '2AAA  AAA 2')
col3<- c('AbCV', 'cc', 'C', 'cAAc Acc ccAAAc')
df<-data.frame(col1,col2,col3)

for(i in 1: ncol(df)){
  df[,i] <- df[,i] %>%  str_to_title(df[,i])
  }

df




[[alternative HTML version deleted]]

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


[R-es] número de items para para sustituir no es un múltiplo de la longitud del reemplazo

2020-09-06 Por tema Samura .
Hola,

quiero pasar todas las palabras de un df a tipo t�tulo, es decir, la primera 
letra de cada palabra en may�scula y el resto en min�scula.

El caso es que haciendo esto, realiza el cambio, pero me sale el siguiente 
aviso y no consigo quitarlo

1: In opts["locale"] <- locale :n�mero de items para para sustituir no es un 
m�ltiplo de la longitud del reemplazo

library(tidyverse)

col1 <- c('', 'aaa b', 'ccc', 'aa AAA aa BBB')
col2 <- c('', 'b', 'bb', '2AAA  AAA 2')
col3<- c('AbCV', 'cc', 'C', 'cAAc Acc ccAAAc')
df<-data.frame(col1,col2,col3)

for(i in 1: ncol(df)){
  df[,i] <- df[,i] %>%  str_to_title(df[,i])
  }

df




[[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] Tabla con dibujo en R Markdown

2020-09-06 Por tema Samura .
Muy interesante, muchas gracias.

De: Juan Carlos Lopez Mesa 
Enviado: sábado, 5 de septiembre de 2020 21:36
Para: Carlos Ortega 
Cc: Samura . ; Lista R 
Asunto: Re: [R-es] Tabla con dibujo en R Markdown


Hola,

Tal vez esta pagina te sirva
https://cran.r-project.org/web/packages/kableExtra/vignettes/awesome_table_in_html.html

Saludos



El sáb., 5 sept. 2020 a las 0:45, Carlos Ortega 
(mailto:c...@qualityexcellence.es>>) escribió:
Hola,

Sí, mira esta referencia:

https://stackoverflow.com/questions/50108763/how-to-insert-images-into-table-in-r-markdown

Saludos,
Carlos Ortega
www.qualityexcellence.es<http://www.qualityexcellence.es>

El sáb., 5 sept. 2020 a las 1:37, Samura . 
(mailto:tontit...@hotmail.com>>) escribió:

Hola a tod@s!!

Se podría crear en R Markdown una tabla de este estilo?


[cid:1745ccb5a67ed9b6ed21]


A las malas se puede poner la tabla entera como una imagen, pero me gustaría 
saber si R Markdown
permite meter imágenes dentro de tablas.

Gracias.


___
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


--
Saludos,
Carlos Ortega
www.qualityexcellence.es<http://www.qualityexcellence.es>
___
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
___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


[R-es] Tabla con dibujo en R Markdown

2020-09-04 Por tema Samura .

Hola a tod@s!!

Se podría crear en R Markdown una tabla de este estilo?


[cid:3350c780-8006-4088-8226-ce28cb0ce975]


A las malas se puede poner la tabla entera como una imagen, pero me gustaría 
saber si R Markdown
permite meter imágenes dentro de tablas.

Gracias.


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


[R-es] De R a pyspark

2020-06-16 Por tema Samura .
Hola,

alguien sabr�a decirme como "traducir" este c�digo de R a c�digo Spark con 
Python (pyspark)

para rellenar los valores nulos de una columna con los valores de otra.

idx <- which(is.na(df$columna3))

df[idx, 'columna3'] <- df[idx, 'columna4']

Muchas gracias!


[[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] Mantener nombres de variables

2020-04-26 Por tema Samura .
OK, perfecto, justo lo que buscaba.

Es que luego quiero hacer una selección de variables y al "cambiar el nombre" 
me fastidiaba.

Gracias

De: Salvador Castillo Raya 
Enviado: domingo, 26 de abril de 2020 20:40
Para: Samura . ; Lista R 
Asunto: RE: Mantener nombres de variables


Buenas noches,



Esta sería una forma de hacerlo:



library(ISLR)

data(Hitters)

df <-na.omit(Hitters)



df$League <- ifelse(df$League == 'N', 0, 1)

df$Division <- ifelse(df$Division == 'W', 0, 1)

df$NewLeague <- ifelse(df$NewLeague == 'N', 0, 1)



modelo <- lm(Salary~.,data= df)



Saludos,

Salva



From: Samura .<mailto:tontit...@hotmail.com>
Sent: domingo, 26 de abril de 2020 22:17
To: Lista R<mailto:R-help-es@r-project.org>
Subject: [R-es] Mantener nombres de variables



Hola
tengo la siguiente duda,
�C�mo hago para que R no me cambie el nombre de las variables en este ejemplo?


library(ISLR)
data(Hitters)
Hitters<-na.omit(Hitters)

modelo=lm(Salary~.,data=Hitters)
modelo

las variables
League
Division
NewLeague

ahora se llaman
LeagueN
DivisionW
NewLeagueN

quiero pasar esas variables  a 0-1,
he probado con recode o con fastDummies , pero al final acaba cambi�ndome las 
variables.




[[alternative HTML version deleted]]



[[alternative HTML version deleted]]

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


[R-es] Mantener nombres de variables

2020-04-26 Por tema Samura .
Hola
tengo la siguiente duda,
�C�mo hago para que R no me cambie el nombre de las variables en este ejemplo?


library(ISLR)
data(Hitters)
Hitters<-na.omit(Hitters)

modelo=lm(Salary~.,data=Hitters)
modelo

las variables
League
Division
NewLeague

ahora se llaman
LeagueN
DivisionW
NewLeagueN

quiero pasar esas variables  a 0-1,
he probado con recode o con fastDummies , pero al final acaba cambi�ndome las 
variables.




[[alternative HTML version deleted]]

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


[R-es] Bootstrap 0.632 plus

2020-02-02 Por tema Samura .
Hola,

�alguien conoce alg�n paquete que realice un bootstrap 0.632 plus?
�o c�mo hacerlo por ejemplo a partir del 0.632 del paquete caret?



[[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] Identificar todos los repetidos y "marcarlos".

2019-05-18 Por tema Samura .
Hola,
gracias por la respuesta.

Por como funciona "duplicate" el dato original que se repite no lo marca, y si 
que necesitaba marcarlo, ya que el objetivo era obtener un data frame con todos 
dnis  repetidos y ver en que se diferencian observando el resto de variables.

Al final lo he resuelto de una manera un poco artesanal, obteniendo los dnis 
unicos de los duplicados y filtrando
pero pensaba que habria alguna funcion que te diera todos los repetidos de 
golpe.

Un saludo.


De: Salvador Castillo Raya 
Enviado: sábado, 18 de mayo de 2019 0:31
Para: Samura .; r-help-es@r-project.org
Asunto: RE: Identificar todos los repetidos y "marcarlos".


Hola,



Te serviría algo así:



df <- data.frame(x=c(1, 1, 4, 5, 4, 6))



df <- cbind(df, ind_duplicado = as.integer(duplicated(df)))



df_sindup <-subset(df, ind_duplicado == 0)



Saludos.




From: R-help-es  on behalf of Samura . 

Sent: Saturday, May 18, 2019 2:10:37 AM
To: r-help-es@r-project.org
Subject: [R-es] Identificar todos los repetidos y "marcarlos".

Hola,
Tengo la siguiente duda:
�existe algo parecido a identificar casos repetidos en R al estilo de como lo 
hace spss? (a�adiendo una nueva columna de datos y marcando los casos)

Estoy probando con "duplicated" pero no es lo que busco.


Gracias.

[[alternative HTML version deleted]]


[[alternative HTML version deleted]]

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