Jorge Tornero - Listas
2013-Dec-03 13:17 UTC
[R-es] seleccionar columnas de un dataframe mediante variables
Pues este es el culpable... como soy nuevo en esto, disculpad si las estrategias de creación de datframes, etc. son poco ortodoxas. Y por cierto... esto del slicing con R es un poco... duro library(RPostgreSQL) library(reshape) #CARGA DE DATOS conn<-dbConnect("PostgreSQL",dbname="OFIDAT",user="antares") #consulta<-dbSendQuery(conn,"select codigo_buque,coalesce(fecha_desembarque,fecha_regreso)::date # as fecha,al3_code,peso::numeric from DPCERCO where peso>0;") # PESOS y MAREAS consulta<-dbSendQuery(conn,"select idmarea, codigo_buque, al3_code, peso FROM DPCERCO where peso>0 order by idmarea,codigo_buque;") dpcerco<-fetch(consulta,-1) #Con porcentajes e idmarea p.ini<-cast(dpcerco, idmarea+codigo_buque ~ al3_code,sum) #Ahora vamos a modificar p.ini para dejarla con las columnas ordenadas según importancia en peso #Primero dividimos p.ini en campos genericos (barco y fecha) y campos con valores (especies) p.grupos<-p.ini[1:2] p.pesos<-p.ini[-(1:2)] #Definimos criterio de ordenacion (es un vector con las suma total por especie) criterio <- apply(p.pesos, 2, sum, na.rm=TRUE) #Aplicamos el criterio de ordenación p.pesos.ord<-p.pesos[,order(-criterio)] #Simbolo negativo para ordenar de mayor a menor #CREACION DE TABLA CON PORCENTAJOS # 1) Cogemos los nombres de las columnas originales: nombresColumna <- colnames(p.pesos.ord) # 2) Le añadimos a cada nombre el sufijo _peso para evitar duplicados en nombre de columna ; nuevosNombresColumna <- paste(nombresColumna,'_peso') # 3) Obtenemos las sumas por fila de los pesos por marea: totalPesoMarea <- rowSums(p.pesos.ord) # 4) Creamos un dataframe nuevo con los porcentajes de las columnas que corresponda, que # conservará los nombres de columna correctos (alpha3 sin alterar) p.porcs <- p.pesos.ord/totalPesoMarea # 5) Cambiamos los nombres de columna del dataframe de pesos por los nuevos colnames(p.pesos.ord) <- nuevosNombresColumna # 6) Ahora obtenemos lo que será en el futuro la columna inicial de las especies en porcentaje # (sumamos 2 para tener en cuenta la columna de suma que obtenemos en el siguiente paso) colIniAnalisis <- ncol(p.grupos)+ncol(p.pesos.ord)+2 # 6) Ahora ya es posible juntar todo para tener la tabla final ( p <- cbind(p.grupos,p.pesos.ord,totalPesoMarea,p.porcs) #La variable numero especies indica el número de especies a usar en el análisis. # Como las especies están ordenadas, cuando decidamos quedarnos con las X primeras especies # simplemente establecemos numeroEspecies<-X numeroEspecies<-110 columnaCorte<-colIniAnalisis+numeroEspecies #En lugar de estar siempre cambiando varios parámetros, centralizamos el rango de columnas para CLARA # en esta variable rangoAnalisis<-c(colIniAnalisis:columnaCorte) <<<- Muchas gracias por vuestra ayuda El 03/12/13 14:17, Isidro Hidalgo escribió:> Chico, me quedo a cuadros. Algún fiera de por aquí te dirá por qué, pero yo > a bote pronto no tengo ni idea... Si nos puedes poner el código con el que > se originan ese par de variables quizá podamos ver algo... > Un saludo > > > Isidro Hidalgo Arellano > Observatorio Regional de Empleo > D.G. de Desarrollo de Estrategia Económica y Asuntos Europeos > Avenida de Irlanda, 14 > Tlf.: 925 28 80 98 ihidalgo en jccm.es > Consejería de Empleo y Economía > http://www.jccm.es > > > > >> -----Mensaje original----- >> De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- >> project.org] En nombre de Jorge Tornero - Listas >> Enviado el: martes, 03 de diciembre de 2013 14:09 >> Para: Carlos J. Gil Bellosta >> CC: r-help-es >> Asunto: Re: [R-es] seleccionar columnas de un dataframe mediante >> variables >> >> Hola a todos: >> >> Rediela!! >> >> Si hago la prueba con >> >> rangoAnalisis<-c(110:120) >> >> Funciona!!! >> >> Pero como os comenté antes, no. >> Ojo!!! >> >> La idea es que tanto columnaInicial como columnaFinal son >> números(índices) de columna!!! De hecho, haciendo el str() de estas >> variables me indica que son del tipo num >> >> Un saludo >> >> >> >> >> El 03/12/13 13:41, Carlos J. Gil Bellosta escribió: >>> Hola, ¿qué tal? >>> >>> ¿Qué son columnaInicial y columnaFinal? ¿Números? En tal caso, >> debería >>> funcionar lo que haces. >>> >>> Si no, tienes que convertirlos a números: >>> >>> col.ini.num <- which(colnames(datos.original) == columnaInicial) >>> col.fin.num <- which(colnames(datos.original) == columnaFinal) >>> >>> Y entonces sí que puedes crear el rango col.ini.num:col.fin.num. >>> >>> Un saludo, >>> >>> Carlos J. Gil Bellosta >>> http://www.datanalytics.com >>> >>> El día 3 de diciembre de 2013 13:30, Jorge Tornero - Listas >>> <jtorlistas en gmail.com> escribió: >>>> Buenos días a todos: >>>> >>>> Para empezar, y como este es mi primer mensaje a la lista, me >>>> presentaré. Mi nombre es Jorge Tornero y trabajo en el Instituto >>>> Español de Oceanografía como Ayudante de Investigación. No soy >>>> usuario habitual de R pero estoy tomando contacto con él de cara a >> un proyecto en el que ando involucrado. >>>> Mi consulta es: >>>> >>>> Me interesaría poder seleccionar columnas de un dataframe, pero >>>> empleando dos variables como inicio del intervalo y fin. He >> intentado lo siguiente: >>>> rangoAnalisis<-c(columnaInicial:columnaFinal) >>>> >>>> y luego >>>> >>>> datos<-datos.original[,rangoAnalisis] >>>> >>>> Con sus variantes de paréntesis, etc... sin resultado >>>> >>>> ¿Alguna idea? >>>> >>>> Muchas gracias y un saludo >>>> >>>> Jorge Tornero >>>> >>>> _______________________________________________ >>>> R-help-es mailing list >>>> R-help-es en r-project.org >>>> https://stat.ethz.ch/mailman/listinfo/r-help-es >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es
Isidro Hidalgo
2013-Dec-03 13:37 UTC
[R-es] seleccionar columnas de un dataframe mediante variables
Cuando haces... colIniAnalisis <- ncol(p.grupos)+ncol(p.pesos.ord)+2 ...sumas 2 al número de columnas de los dataframes pierdes el tipo "integer" y conviertes "colIniAnalisis" a coma flotante. Cuando construyes el rango ya no tienes enteros y no funciona. En teoría debería, pero no lo hace. Quizá alguien te pueda explicar por qué no funciona... Prueba con rangoAnalisis<-as.integer(colIniAnalisis:columnaCorte). ¿Ahora sí? Un saludo P.D.:> a=3 > b=9 > a:b[1] 3 4 5 6 7 8 9> str(a:b)int [1:7] 3 4 5 6 7 8 9> str(a:b + 2)num [1:7] 5 6 7 8 9 10 11 Isidro Hidalgo Arellano Observatorio Regional de Empleo Consejería de Empleo y Economía http://www.jccm.es> -----Mensaje original----- > De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- > project.org] En nombre de Jorge Tornero - Listas > Enviado el: martes, 03 de diciembre de 2013 14:18 > Para: r-help-es en r-project.org > Asunto: Re: [R-es] seleccionar columnas de un dataframe mediante > variables > > Pues este es el culpable... como soy nuevo en esto, disculpad si las > estrategias de creación de datframes, etc. son poco ortodoxas. Y por > cierto... esto del slicing con R es un poco... duro > > library(RPostgreSQL) > library(reshape) > #CARGA DE DATOS > conn<-dbConnect("PostgreSQL",dbname="OFIDAT",user="antares") > #consulta<-dbSendQuery(conn,"select > codigo_buque,coalesce(fecha_desembarque,fecha_regreso)::date > # as fecha,al3_code,peso::numeric from DPCERCO > where peso>0;") > > # PESOS y MAREAS > consulta<-dbSendQuery(conn,"select > idmarea, > codigo_buque, > al3_code, > peso > FROM > DPCERCO > where > peso>0 order by idmarea,codigo_buque;") > > > dpcerco<-fetch(consulta,-1) > > #Con porcentajes e idmarea > p.ini<-cast(dpcerco, idmarea+codigo_buque ~ al3_code,sum) > > > #Ahora vamos a modificar p.ini para dejarla con las columnas ordenadas > según importancia en peso #Primero dividimos p.ini en campos genericos > (barco y fecha) y campos con valores (especies) p.grupos<-p.ini[1:2] > p.pesos<-p.ini[-(1:2)] > > #Definimos criterio de ordenacion (es un vector con las suma total por > especie) > criterio <- apply(p.pesos, 2, sum, na.rm=TRUE) > > #Aplicamos el criterio de ordenación > p.pesos.ord<-p.pesos[,order(-criterio)] #Simbolo negativo para ordenar > de mayor a menor > > #CREACION DE TABLA CON PORCENTAJOS > > # 1) Cogemos los nombres de las columnas originales: > nombresColumna <- colnames(p.pesos.ord) > > # 2) Le añadimos a cada nombre el sufijo _peso para evitar duplicados > en nombre de columna ; nuevosNombresColumna <- > paste(nombresColumna,'_peso') > > # 3) Obtenemos las sumas por fila de los pesos por marea: > totalPesoMarea <- rowSums(p.pesos.ord) > > # 4) Creamos un dataframe nuevo con los porcentajes de las columnas que > corresponda, que # conservará los nombres de columna correctos (alpha3 > sin alterar) p.porcs <- p.pesos.ord/totalPesoMarea > > # 5) Cambiamos los nombres de columna del dataframe de pesos por los > nuevos > colnames(p.pesos.ord) <- nuevosNombresColumna > > # 6) Ahora obtenemos lo que será en el futuro la columna inicial de las > especies en porcentaje > # (sumamos 2 para tener en cuenta la columna de suma que obtenemos > en > el siguiente paso) > > colIniAnalisis <- ncol(p.grupos)+ncol(p.pesos.ord)+2 > > # 6) Ahora ya es posible juntar todo para tener la tabla final ( > > p <- cbind(p.grupos,p.pesos.ord,totalPesoMarea,p.porcs) > > #La variable numero especies indica el número de especies a usar en el > análisis. > # Como las especies están ordenadas, cuando decidamos quedarnos con las > X primeras especies # simplemente establecemos numeroEspecies<-X > numeroEspecies<-110 columnaCorte<-colIniAnalisis+numeroEspecies > > #En lugar de estar siempre cambiando varios parámetros, centralizamos > el rango de columnas para CLARA # en esta variable > rangoAnalisis<-c(colIniAnalisis:columnaCorte) <<<- > > > > Muchas gracias por vuestra ayuda > > El 03/12/13 14:17, Isidro Hidalgo escribió: > > Chico, me quedo a cuadros. Algún fiera de por aquí te dirá por qué, > pero yo > > a bote pronto no tengo ni idea... Si nos puedes poner el código con > el que > > se originan ese par de variables quizá podamos ver algo... > > Un saludo > > > > > > Isidro Hidalgo Arellano > > Observatorio Regional de Empleo > > D.G. de Desarrollo de Estrategia Económica y Asuntos Europeos > > Avenida de Irlanda, 14 > > Tlf.: 925 28 80 98 ihidalgo en jccm.es > > Consejería de Empleo y Economía > > http://www.jccm.es > > > > > > > > > >> -----Mensaje original----- > >> De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- > >> project.org] En nombre de Jorge Tornero - Listas > >> Enviado el: martes, 03 de diciembre de 2013 14:09 > >> Para: Carlos J. Gil Bellosta > >> CC: r-help-es > >> Asunto: Re: [R-es] seleccionar columnas de un dataframe mediante > >> variables > >> > >> Hola a todos: > >> > >> Rediela!! > >> > >> Si hago la prueba con > >> > >> rangoAnalisis<-c(110:120) > >> > >> Funciona!!! > >> > >> Pero como os comenté antes, no. > >> Ojo!!! > >> > >> La idea es que tanto columnaInicial como columnaFinal son > >> números(índices) de columna!!! De hecho, haciendo el str() de estas > >> variables me indica que son del tipo num > >> > >> Un saludo > >> > >> > >> > >> > >> El 03/12/13 13:41, Carlos J. Gil Bellosta escribió: > >>> Hola, ¿qué tal? > >>> > >>> ¿Qué son columnaInicial y columnaFinal? ¿Números? En tal caso, > >> debería > >>> funcionar lo que haces. > >>> > >>> Si no, tienes que convertirlos a números: > >>> > >>> col.ini.num <- which(colnames(datos.original) == columnaInicial) > >>> col.fin.num <- which(colnames(datos.original) == columnaFinal) > >>> > >>> Y entonces sí que puedes crear el rango col.ini.num:col.fin.num. > >>> > >>> Un saludo, > >>> > >>> Carlos J. Gil Bellosta > >>> http://www.datanalytics.com > >>> > >>> El día 3 de diciembre de 2013 13:30, Jorge Tornero - Listas > >>> <jtorlistas en gmail.com> escribió: > >>>> Buenos días a todos: > >>>> > >>>> Para empezar, y como este es mi primer mensaje a la lista, me > >>>> presentaré. Mi nombre es Jorge Tornero y trabajo en el Instituto > >>>> Español de Oceanografía como Ayudante de Investigación. No soy > >>>> usuario habitual de R pero estoy tomando contacto con él de cara a > >> un proyecto en el que ando involucrado. > >>>> Mi consulta es: > >>>> > >>>> Me interesaría poder seleccionar columnas de un dataframe, pero > >>>> empleando dos variables como inicio del intervalo y fin. He > >> intentado lo siguiente: > >>>> rangoAnalisis<-c(columnaInicial:columnaFinal) > >>>> > >>>> y luego > >>>> > >>>> datos<-datos.original[,rangoAnalisis] > >>>> > >>>> Con sus variantes de paréntesis, etc... sin resultado > >>>> > >>>> ¿Alguna idea? > >>>> > >>>> Muchas gracias y un saludo > >>>> > >>>> Jorge Tornero > >>>> > >>>> _______________________________________________ > >>>> R-help-es mailing list > >>>> R-help-es en r-project.org > >>>> https://stat.ethz.ch/mailman/listinfo/r-help-es > >> _______________________________________________ > >> R-help-es mailing list > >> R-help-es en r-project.org > >> https://stat.ethz.ch/mailman/listinfo/r-help-es > > _______________________________________________ > > R-help-es mailing list > > R-help-es en r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es
Carlos J. Gil Bellosta
2013-Dec-03 13:48 UTC
[R-es] seleccionar columnas de un dataframe mediante variables
No puede ser lo de la coma flotante. P.e., la expresión siguiente "funciona": iris[2.1:4.5,] Lo más probable es que el rango de selección exceda el de las columnas por algún motivo, como en> iris[,6:7]Error in `[.data.frame`(iris, , 6:7) : undefined columns selected Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com
Isidro Hidalgo
2013-Dec-03 13:54 UTC
[R-es] seleccionar columnas de un dataframe mediante variables
XD... gajes del oficio. Te lo había dicho Carlos en el mensaje anterior... Un saludo Isidro Hidalgo Arellano Observatorio Regional de Empleo D.G. de Desarrollo de Estrategia Económica y Asuntos Europeos Avenida de Irlanda, 14 Tlf.: 925 28 80 98 ihidalgo en jccm.es Consejería de Empleo y Economía http://www.jccm.es> -----Mensaje original----- > De: Jorge Tornero - Listas [mailto:jtorlistas en gmail.com] > Enviado el: martes, 03 de diciembre de 2013 14:44 > Para: Isidro Hidalgo > Asunto: Re: [R-es] seleccionar columnas de un dataframe mediante > variables > > Hola a todos, > > es más sencillo que todo eso. El error de R "undefined columns > selected" > se ha de interpretar como, por ejemplo "list index out of range" > > Al calcular el número final me paso en 1 y claro, se tira de una > columna que no existe. > > Lamento haberos dado la paliza... pero ese mensaje de error me hacía > pensar en otra cosa... > > Muchas gracias por vuestra ayuda > > > Jorge Tornero > > > > > > El 03/12/13 14:37, Isidro Hidalgo escribió: > > Cuando haces... > > colIniAnalisis <- ncol(p.grupos)+ncol(p.pesos.ord)+2 > > ...sumas 2 al número de columnas de los dataframes pierdes el tipo > "integer" > > y conviertes "colIniAnalisis" a coma flotante. > > Cuando construyes el rango ya no tienes enteros y no funciona. En > > teoría debería, pero no lo hace. Quizá alguien te pueda explicar por > > qué no funciona... > > Prueba con rangoAnalisis<-as.integer(colIniAnalisis:columnaCorte). > > ¿Ahora sí? > > Un saludo > > > > P.D.: > >> a=3 > >> b=9 > >> a:b > > [1] 3 4 5 6 7 8 9 > >> str(a:b) > > int [1:7] 3 4 5 6 7 8 9 > >> str(a:b + 2) > > num [1:7] 5 6 7 8 9 10 11 > > > > Isidro Hidalgo Arellano > > Observatorio Regional de Empleo > > Consejería de Empleo y Economía > > http://www.jccm.es > > > > > >> -----Mensaje original----- > >> De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- > >> project.org] En nombre de Jorge Tornero - Listas Enviado el: martes, > >> 03 de diciembre de 2013 14:18 > >> Para: r-help-es en r-project.org > >> Asunto: Re: [R-es] seleccionar columnas de un dataframe mediante > >> variables > >> > >> Pues este es el culpable... como soy nuevo en esto, disculpad si las > >> estrategias de creación de datframes, etc. son poco ortodoxas. Y por > >> cierto... esto del slicing con R es un poco... duro > >> > >> library(RPostgreSQL) > >> library(reshape) > >> #CARGA DE DATOS > >> conn<-dbConnect("PostgreSQL",dbname="OFIDAT",user="antares") > >> #consulta<-dbSendQuery(conn,"select > >> codigo_buque,coalesce(fecha_desembarque,fecha_regreso)::date > >> # as fecha,al3_code,peso::numeric from DPCERCO > >> where peso>0;") > >> > >> # PESOS y MAREAS > >> consulta<-dbSendQuery(conn,"select > >> idmarea, > >> codigo_buque, > >> al3_code, > >> peso > >> FROM > >> DPCERCO > >> where > >> peso>0 order by idmarea,codigo_buque;") > >> > >> > >> dpcerco<-fetch(consulta,-1) > >> > >> #Con porcentajes e idmarea > >> p.ini<-cast(dpcerco, idmarea+codigo_buque ~ al3_code,sum) > >> > >> > >> #Ahora vamos a modificar p.ini para dejarla con las columnas > >> ordenadas según importancia en peso #Primero dividimos p.ini en > >> campos genericos (barco y fecha) y campos con valores (especies) > >> p.grupos<-p.ini[1:2] p.pesos<-p.ini[-(1:2)] > >> > >> #Definimos criterio de ordenacion (es un vector con las suma total > >> por > >> especie) > >> criterio <- apply(p.pesos, 2, sum, na.rm=TRUE) > >> > >> #Aplicamos el criterio de ordenación > >> p.pesos.ord<-p.pesos[,order(-criterio)] #Simbolo negativo para > >> ordenar de mayor a menor > >> > >> #CREACION DE TABLA CON PORCENTAJOS > >> > >> # 1) Cogemos los nombres de las columnas originales: > >> nombresColumna <- colnames(p.pesos.ord) > >> > >> # 2) Le añadimos a cada nombre el sufijo _peso para evitar > duplicados > >> en nombre de columna ; nuevosNombresColumna <- > >> paste(nombresColumna,'_peso') > >> > >> # 3) Obtenemos las sumas por fila de los pesos por marea: > >> totalPesoMarea <- rowSums(p.pesos.ord) > >> > >> # 4) Creamos un dataframe nuevo con los porcentajes de las columnas > >> que corresponda, que # conservará los nombres de columna correctos > >> (alpha3 sin alterar) p.porcs <- p.pesos.ord/totalPesoMarea > >> > >> # 5) Cambiamos los nombres de columna del dataframe de pesos por los > >> nuevos > >> colnames(p.pesos.ord) <- nuevosNombresColumna > >> > >> # 6) Ahora obtenemos lo que será en el futuro la columna inicial de > >> las especies en porcentaje > >> # (sumamos 2 para tener en cuenta la columna de suma que > obtenemos > >> en > >> el siguiente paso) > >> > >> colIniAnalisis <- ncol(p.grupos)+ncol(p.pesos.ord)+2 > >> > >> # 6) Ahora ya es posible juntar todo para tener la tabla final ( > >> > >> p <- cbind(p.grupos,p.pesos.ord,totalPesoMarea,p.porcs) > >> > >> #La variable numero especies indica el número de especies a usar en > >> el análisis. > >> # Como las especies están ordenadas, cuando decidamos quedarnos con > >> las X primeras especies # simplemente establecemos numeroEspecies<-X > >> numeroEspecies<-110 columnaCorte<-colIniAnalisis+numeroEspecies > >> > >> #En lugar de estar siempre cambiando varios parámetros, > centralizamos > >> el rango de columnas para CLARA # en esta variable > >> rangoAnalisis<-c(colIniAnalisis:columnaCorte) <<<- > >> > >> > >> > >> Muchas gracias por vuestra ayuda > >> > >> El 03/12/13 14:17, Isidro Hidalgo escribió: > >>> Chico, me quedo a cuadros. Algún fiera de por aquí te dirá por qué, > >> pero yo > >>> a bote pronto no tengo ni idea... Si nos puedes poner el código con > >> el que > >>> se originan ese par de variables quizá podamos ver algo... > >>> Un saludo > >>> > >>> > >>> Isidro Hidalgo Arellano > >>> Observatorio Regional de Empleo > >>> D.G. de Desarrollo de Estrategia Económica y Asuntos Europeos > >>> Avenida de Irlanda, 14 > >>> Tlf.: 925 28 80 98 ihidalgo en jccm.es > >>> Consejería de Empleo y Economía > >>> http://www.jccm.es > >>> > >>> > >>> > >>> > >>>> -----Mensaje original----- > >>>> De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- > >>>> project.org] En nombre de Jorge Tornero - Listas Enviado el: > >>>> martes, 03 de diciembre de 2013 14:09 > >>>> Para: Carlos J. Gil Bellosta > >>>> CC: r-help-es > >>>> Asunto: Re: [R-es] seleccionar columnas de un dataframe mediante > >>>> variables > >>>> > >>>> Hola a todos: > >>>> > >>>> Rediela!! > >>>> > >>>> Si hago la prueba con > >>>> > >>>> rangoAnalisis<-c(110:120) > >>>> > >>>> Funciona!!! > >>>> > >>>> Pero como os comenté antes, no. > >>>> Ojo!!! > >>>> > >>>> La idea es que tanto columnaInicial como columnaFinal son > >>>> números(índices) de columna!!! De hecho, haciendo el str() de > estas > >>>> variables me indica que son del tipo num > >>>> > >>>> Un saludo > >>>> > >>>> > >>>> > >>>> > >>>> El 03/12/13 13:41, Carlos J. Gil Bellosta escribió: > >>>>> Hola, ¿qué tal? > >>>>> > >>>>> ¿Qué son columnaInicial y columnaFinal? ¿Números? En tal caso, > >>>> debería > >>>>> funcionar lo que haces. > >>>>> > >>>>> Si no, tienes que convertirlos a números: > >>>>> > >>>>> col.ini.num <- which(colnames(datos.original) == columnaInicial) > >>>>> col.fin.num <- which(colnames(datos.original) == columnaFinal) > >>>>> > >>>>> Y entonces sí que puedes crear el rango col.ini.num:col.fin.num. > >>>>> > >>>>> Un saludo, > >>>>> > >>>>> Carlos J. Gil Bellosta > >>>>> http://www.datanalytics.com > >>>>> > >>>>> El día 3 de diciembre de 2013 13:30, Jorge Tornero - Listas > >>>>> <jtorlistas en gmail.com> escribió: > >>>>>> Buenos días a todos: > >>>>>> > >>>>>> Para empezar, y como este es mi primer mensaje a la lista, me > >>>>>> presentaré. Mi nombre es Jorge Tornero y trabajo en el Instituto > >>>>>> Español de Oceanografía como Ayudante de Investigación. No soy > >>>>>> usuario habitual de R pero estoy tomando contacto con él de cara > >>>>>> a > >>>> un proyecto en el que ando involucrado. > >>>>>> Mi consulta es: > >>>>>> > >>>>>> Me interesaría poder seleccionar columnas de un dataframe, pero > >>>>>> empleando dos variables como inicio del intervalo y fin. He > >>>> intentado lo siguiente: > >>>>>> rangoAnalisis<-c(columnaInicial:columnaFinal) > >>>>>> > >>>>>> y luego > >>>>>> > >>>>>> datos<-datos.original[,rangoAnalisis] > >>>>>> > >>>>>> Con sus variantes de paréntesis, etc... sin resultado > >>>>>> > >>>>>> ¿Alguna idea? > >>>>>> > >>>>>> Muchas gracias y un saludo > >>>>>> > >>>>>> Jorge Tornero > >>>>>> > >>>>>> _______________________________________________ > >>>>>> R-help-es mailing list > >>>>>> R-help-es en r-project.org > >>>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es > >>>> _______________________________________________ > >>>> R-help-es mailing list > >>>> R-help-es en r-project.org > >>>> https://stat.ethz.ch/mailman/listinfo/r-help-es > >>> _______________________________________________ > >>> R-help-es mailing list > >>> R-help-es en r-project.org > >>> https://stat.ethz.ch/mailman/listinfo/r-help-es > >> _______________________________________________ > >> R-help-es mailing list > >> R-help-es en r-project.org > >> https://stat.ethz.ch/mailman/listinfo/r-help-es > > _______________________________________________ > > R-help-es mailing list > > R-help-es en r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es
Reasonably Related Threads
- seleccionar columnas de un dataframe mediante variables
- seleccionar columnas de un dataframe mediante variables
- seleccionar columnas de un dataframe mediante variables
- seleccionar columnas de un dataframe mediante variables
- seleccionar columnas de un dataframe mediante variables