Hola Carlos, muchas gracias....pero hago exactamente lo mismo que tu..y al intentar de hacer la matriz de correlaciones sigue generando error: 'x' must be numeric se podrá deber a algo relacionado con la configuración de mi equipo, o qué más podría hacer para que funcione! Muchas gracias!
Date: Wed, 11 Nov 2015 15:53:44 +0100 Subject: Re: [R-es] Problema con la lectura de datos From: [email protected] To: [email protected] CC: [email protected] Hola, A mí me funciona la importación directa. Previamente he guardado la hoja de Excel en .csv (separado por ";"). Y hago sin problemas la correlación entre dos variables (las dos primeras). > datIn <- read.csv("Variables.csv", header=T, as.is=T, sep=";", dec=",") > head(datIn) EMPRESAS AA AB AC AD AE AF AG AH AI AJ BA BB BC DA DB DC DD DE EA EB EE 1 A.AUDITOR\xcdA 200 350 90 2000 500 30 59 24 5937586 2644207 13.47170 588.00 834 0.00 0.00000 0.0000 0.00 477 763 57.19424 62.51638 2 A.JUR\xcdDICAS 0 499 120 825 358 81 82 27 5012257 2666411 15.69663 891.00 1655 29.00 0.00000 0.0000 43.03 738 1400 44.59592 52.71429 3 A.SERVICIOS 219 0 62 1411 743 112 71 45 11461538 5190688 21.10714 855.04 1222 21.00 80.01000 65.5527 69.00 694 1098 56.79214 63.20583 4 B.M\xc1LAGA 776 1796 1590 1888 2381 392 168 107 21441999 0 12.54286 2768.00 3677 58.00 82.00000 68.0000 55.00 2206 3332 59.99456 66.20648 5 B.SEVILLA 143 394 0 502 0 30 30 18 2966295 1173798 15.85185 355.00 894 0.00 56.49913 0.0000 32.92 444 779 49.66443 56.99615 6 CONSULTORIAS 481 701 238 1259 713 46 125 0 12984728 4710599 9.00000 696.00 1059 6.14 68.32000 48.5700 19.38 459 979 43.34278 46.88458 > cor(datIn$AA, datIn$BB) [1] 0.2626692 También puedo hacer sin problemas la correlación entre todas las variables salvo obviamente la primera. cor(datIn[,c(2:ncol(datIn))]) AA AB AC AD AE AF AG AH AI AJ BA BB BC AA 1.00000000 0.8486977 0.8265902 0.6596269 0.68866326 0.4743002 0.20140216 0.36692385 0.15680060 0.1815578 0.04421944 0.2626692 0.3700924 AB 0.84869774 1.0000000 0.7727162 0.6800804 0.60239429 0.4549922 0.20038993 0.32051030 0.07611170 0.1867806 0.14900189 0.2935827 0.3828968 AC 0.82659015 0.7727162 1.0000000 0.4311124 0.54400731 0.4709625 0.28513806 0.44539063 0.20701477 0.1489140 0.11556071 0.2635190 0.3144135 AD 0.65962689 0.6800804 0.4311124 1.0000000 0.57683448 0.4778828 0.21678760 0.12908808 0.23096319 0.1605449 0.23394432 0.2778728 0.4127627 AE 0.68866326 0.6023943 0.5440073 0.5768345 1.00000000 0.7380745 0.31759392 0.55843107 0.35888923 0.4279849 0.23914953 0.3466021 0.4665056 AF 0.47430018 0.4549922 0.4709625 0.4778828 0.73807450 1.0000000 0.61495885 0.61403766 0.56650392 0.4192717 0.52201711 0.5480744 0.5570965 AG 0.20140216 0.2003899 0.2851381 0.2167876 0.31759392 0.6149588 1.00000000 0.71671688 0.75102728 0.5815705 0.35942749 0.3458967 0.3521773 AH 0.36692385 0.3205103 0.4453906 0.1290881 0.55843107 0.6140377 0.71671688 1.00000000 0.56378874 0.7522773 0.33759298 0.3339301 0.3772097 Saludos, Carlos Ortega www.qualityexcellence.es El 11 de noviembre de 2015, 15:32, Jesús Para Fernández <[email protected]> escribió: Si es un excel, yo siempre los paso a R de la misma manera: Los copio del excel y los pego en R usando el comando: datos<-read.table("clipboard",header=T,dec=",",sep="\t") siendo dec="," si el separador decimal es l acoma, header=T si lo sdatos tienen título. Y te quitas de usar pqeutees y de líos. Un saludo Jesús > From: [email protected] > To: [email protected]; [email protected] > Date: Wed, 11 Nov 2015 14:22:23 +0000 > Subject: Re: [R-es] Problema con la lectura de datos > > Hola. > > He estado viendo los datos que adjuntas en el correo. Al ser un fichero Excel > xlsx ¿por qué no lo abres directamente? > Te aconsejaría la librería openxlsx (si no la has usado nunca , instálala con > install.packages(“openxlsx”)) > > Este es el código que he ejecutado y los resultados que obtengo: > > library(openxlsx) > > dat <- read.xlsx("Variables.xlsx") > str(dat) > > Que produce: > > 'data.frame': 42 obs. of 22 variables: > $ EMPRESAS: chr "A.AUDITORÍA" "A.JURÍDICAS" "A.SERVICIOS" "B.MÁLAGA" ... > $ AA : num 200 0 219 776 143 481 380 205 806 0 ... > $ AB : num 350 499 0 1796 394 ... > $ AC : num 90 120 62 1590 0 ... > $ AD : num 2000 825 1411 1888 502 ... > $ AE : num 500 358 743 2381 0 ... > $ AF : num 30 81 112 392 30 46 140 46 283 214 ... > $ AG : num 59 82 71 168 30 125 69 27 132 268 ... > $ AH : num 24 27 45 107 18 0 50 17 85 148 ... > $ AI : num 5937586 5012257 11461538 21441999 2966295 ... > $ AJ : num 2644207 2666411 5190688 0 1173798 ... > $ BA : num 13.5 15.7 21.1 12.5 15.9 ... > $ BB : num 588 891 855 2768 355 ... > $ BC : num 834 1655 1222 3677 894 ... > $ DA : num 0 29 21 58 0 6.14 59 78.3 40 0 ... > $ DB : num 0 0 80 82 56.5 ... > $ DC : num 0 0 65.6 68 0 ... > $ DD : num 0 43 69 55 32.9 ... > $ DE : num 477 738 694 2206 444 ... > $ EA : num 763 1400 1098 3332 779 ... > $ EB : num 57.2 44.6 56.8 60 49.7 ... > $ EE : num 62.5 52.7 63.2 66.2 57 ... > > En este caso, excepto la primera variable del data.frame, EMPRESAS, el resto > de variables son todas numéricas. > > Al calcular la correlación, > > cor(dat[, 2:ncol(dat)]) > > Obtengo, > > > cor(dat[, 2:ncol(dat)]) > AA AB AC AD AE AF AG > AH AI AJ BA BB BC > AA 1.00000000 0.8486977 0.8265902 0.6596269 0.68866326 0.4743002 0.20140216 > 0.36692385 0.15680060 0.1815578 0.04421944 0.2626692 0.3700924 > AB 0.84869774 1.0000000 0.7727162 0.6800804 0.60239429 0.4549922 0.20038993 > 0.32051030 0.07611170 0.1867806 0.14900189 0.2935827 0.3828968 > AC 0.82659015 0.7727162 1.0000000 0.4311124 0.54400731 0.4709625 0.28513806 > 0.44539063 0.20701477 0.1489140 0.11556071 0.2635190 0.3144135 > AD 0.65962689 0.6800804 0.4311124 1.0000000 0.57683448 0.4778828 0.21678760 > 0.12908808 0.23096319 0.1605449 0.23394432 0.2778728 0.4127627 > AE 0.68866326 0.6023943 0.5440073 0.5768345 1.00000000 0.7380745 0.31759392 > 0.55843107 0.35888923 0.4279849 0.23914953 0.3466021 0.4665056 > AF 0.47430018 0.4549922 0.4709625 0.4778828 0.73807450 1.0000000 0.61495885 > 0.61403766 0.56650392 0.4192717 0.52201711 0.5480744 0.5570965 > AG 0.20140216 0.2003899 0.2851381 0.2167876 0.31759392 0.6149588 1.00000000 > 0.71671688 0.75102728 0.5815705 0.35942749 0.3458967 0.3521773 > AH 0.36692385 0.3205103 0.4453906 0.1290881 0.55843107 0.6140377 0.71671688 > 1.00000000 0.56378874 0.7522773 0.33759298 0.3339301 0.3772097 > AI 0.15680060 0.0761117 0.2070148 0.2309632 0.35888923 0.5665039 0.75102728 > 0.56378874 1.00000000 0.7238554 0.36718739 0.3593759 0.3648694 > AJ 0.18155782 0.1867806 0.1489140 0.1605449 0.42798492 0.4192717 0.58157047 > 0.75227731 0.72385544 1.0000000 0.32383985 0.2251971 0.3290529 > BA 0.04421944 0.1490019 0.1155607 0.2339443 0.23914953 0.5220171 0.35942749 > 0.33759298 0.36718739 0.3238398 1.00000000 0.4741997 0.4849367 > BB 0.26266922 0.2935827 0.2635190 0.2778728 0.34660209 0.5480744 0.34589670 > 0.33393007 0.35937594 0.2251971 0.47419975 1.0000000 0.8644753 > BC 0.37009242 0.3828968 0.3144135 0.4127627 0.46650558 0.5570965 0.35217726 > 0.37720971 0.36486945 0.3290529 0.48493672 0.8644753 1.0000000 > DA 0.12729358 0.2097083 0.2273743 0.2586080 0.04903814 0.1337604 0.04770505 > -0.02820084 -0.08026755 -0.0690546 0.10452352 0.2456501 0.2663439 > DB 0.34433620 0.3644439 0.2742700 0.2915012 0.37237335 0.4424803 0.26910692 > 0.18049995 0.07458397 0.1720090 0.25373766 0.2838717 0.3686991 > DC 0.31138871 0.4351456 0.3708863 0.2879036 0.27894283 0.3910026 0.35626679 > 0.25150771 0.04803632 0.1964792 0.21908448 0.3448711 0.3715649 > DD 0.12114443 0.2021762 0.2608359 0.1905531 0.22097695 0.5625022 0.50523504 > 0.31467457 0.39783383 0.2595466 0.53118085 0.2289631 0.1301571 > DE 0.35222168 0.3349595 0.3395499 0.3520103 0.38773536 0.4383205 0.31627815 > 0.32071392 0.36785525 0.2521859 0.48523738 0.8300639 0.9513514 > EA 0.38719393 0.3943053 0.3165222 0.4447254 0.49626537 0.5603614 0.34303174 > 0.38201422 0.36379446 0.3440225 0.44728760 0.8477830 0.9917205 > EB 0.23715300 0.2161053 0.2874953 0.2931956 0.16217684 0.2491931 0.28613475 > 0.24330620 0.31937182 0.1708668 0.68896759 0.2480708 0.3048419 > EE 0.17607827 0.1706387 0.2458498 0.2010243 0.08499049 0.1842111 0.23259246 > 0.17859229 0.24737884 0.1069764 0.63462949 0.1897725 0.2332711 > DA DB DC DD DE EA > EB EE > AA 0.12729358 0.34433620 0.31138871 0.12114443 0.35222168 0.38719393 > 0.2371530 0.17607827 > AB 0.20970834 0.36444390 0.43514558 0.20217623 0.33495945 0.39430527 > 0.2161053 0.17063869 > AC 0.22737429 0.27426997 0.37088630 0.26083592 0.33954991 0.31652223 > 0.2874953 0.24584980 > AD 0.25860803 0.29150116 0.28790356 0.19055307 0.35201029 0.44472536 > 0.2931956 0.20102429 > AE 0.04903814 0.37237335 0.27894283 0.22097695 0.38773536 0.49626537 > 0.1621768 0.08499049 > AF 0.13376042 0.44248035 0.39100256 0.56250225 0.43832051 0.56036142 > 0.2491931 0.18421108 > AG 0.04770505 0.26910692 0.35626679 0.50523504 0.31627815 0.34303174 > 0.2861347 0.23259246 > AH -0.02820084 0.18049995 0.25150771 0.31467457 0.32071392 0.38201422 > 0.2433062 0.17859229 > AI -0.08026755 0.07458397 0.04803632 0.39783383 0.36785525 0.36379446 > 0.3193718 0.24737884 > AJ -0.06905460 0.17200898 0.19647923 0.25954659 0.25218588 0.34402252 > 0.1708668 0.10697637 > BA 0.10452352 0.25373766 0.21908448 0.53118085 0.48523738 0.44728760 > 0.6889676 0.63462949 > BB 0.24565007 0.28387172 0.34487115 0.22896314 0.83006391 0.84778301 > 0.2480708 0.18977246 > BC 0.26634388 0.36869915 0.37156494 0.13015707 0.95135143 0.99172045 > 0.3048419 0.23327107 > DA 1.00000000 0.34271551 0.46962484 0.21028693 0.22537099 0.24605036 > 0.1880578 0.23275533 > DB 0.34271551 1.00000000 0.82643586 0.37753408 0.31011191 0.38632011 > 0.1775467 0.12354507 > DC 0.46962484 0.82643586 1.00000000 0.48052101 0.29376338 0.37927205 > 0.1063780 0.07589745 > DD 0.21028693 0.37753408 0.48052101 1.00000000 0.07915853 0.09352177 > 0.3750688 0.38475445 > DE 0.22537099 0.31011191 0.29376338 0.07915853 1.00000000 0.93416336 > 0.4125650 0.34015216 > EA 0.24605036 0.38632011 0.37927205 0.09352177 0.93416336 1.00000000 > 0.2546461 0.16211743 > EB 0.18805779 0.17754666 0.10637802 0.37506880 0.41256496 0.25464611 > 1.0000000 0.97266157 > EE 0.23275533 0.12354507 0.07589745 0.38475445 0.34015216 0.16211743 > 0.9726616 1.00000000 > > > Espero haberte ayudado. Un cordial saludo. > > > > De: R-help-es [mailto:[email protected]] En nombre de Valentina > Aguilera > Enviado el: Wednesday, November 11, 2015 2:31 PM > Para: daniel; r help > Asunto: Re: [R-es] Problema con la lectura de datos > > Holaa...yo estoy utilizando el siguiente código, pero no me va...y lo que > quiero es que R lea la base de datos, donde la primera columna es el nombre > de la empresa y las otras variables, para luego calcular una matriz de > correlaciones: > > library(xtable) > > Variables <- read.csv("C:/Users/usuario/Documents/variables2.csv", > header=TRUE, sep=";", comment.char="" , > colClasses=c(Empresas="character", rep("numeric",21)), strip.white=FALSE, dec > = ",") > > pero con esto genera el sgte error, como ya he mencionado antes: > > Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, : > scan() expected 'a real', got 'ND' > > Luego, si sólo escribo el siguiente código: > > library(xtable) > > Variables <- read.csv("C:/Users/usuario/Documents/variables2.csv", > header=TRUE, sep=";") > > R los lee, pero cuando quiero generar la matriz de correlaciones, genera el > siguiente error: > > Error in cor(Variables) : 'x' must be numeric > > Realmente no sé que se deba hacer, por lo que agradecería si me pueden > ayudar, aquí adjunto la base de datos en formato excel. > > Gracias mil!!! > > > ________________________________ > Date: Tue, 10 Nov 2015 17:11:33 -0300 > Subject: Re: [R-es] Problema con la lectura de datos > From: [email protected]<mailto:[email protected]> > To: [email protected]<mailto:[email protected]> > CC: [email protected]<mailto:[email protected]>; > [email protected]<mailto:[email protected]> > Valentina, > Si entiendo bien la primer columna de Variables es el nombre de Empresas (un > character), no uses esta columna en la función cor, sólo las columnas > numéricas. cor(Variables[ , -which( names(Variables) == "Empresas")]) > > Si no es ese el problema envía > str(Variables) > > para entender mejor la estructura de los datos, y si puedes dput(Variables). > > Suerte, > > Daniel Merino > > > > El 10 de noviembre de 2015, 17:02, Javier Rubén Marcuzzi > <[email protected]<mailto:[email protected]>> > escribió: > Estimado Valentina Aguilera > > Prueba algo como: > b$Edad <- as.vector(b$Edad) > o > b$Edad <- as.numeric(b$Edad) > > Claro, por cada variable que debas convertir. Yo para saber cuales escribo > str(mi data frame). > > Uno de los dos tendría que funcionar > > Javier Rubén Marcuzzi > Técnico en Industrias Lácteas > Veterinario > > > > De: Valentina Aguilera > Enviado: martes, 10 de noviembre de 2015 16:56 > Para: Javier Rubén Marcuzzi;r help > Asunto: RE: [R-es] Problema con la lectura de datos > > > con as.numeric tampoco me van los cálculos y no conozco otra manera, pues son > alrededor de 40 variables las que tiene la tabla. > To: [email protected]<mailto:[email protected]>; > [email protected]<mailto:[email protected]>; > [email protected]<mailto:[email protected]> > From: [email protected]<mailto:[email protected]> > Subject: RE: [R-es] Problema con la lectura de datos > Date: Tue, 10 Nov 2015 16:43:05 -0300 > Estimada Valentina > > as.numeric(...) > > Mira mi correo (de hace minutos) donde pregunto justo por eso, pero sobre un > error. > > > Javier Rubén Marcuzzi > Técnico en Industrias Lácteas > Veterinario > > > > De: Valentina Aguilera > Enviado: martes, 10 de noviembre de 2015 16:40 > Para: Carlos Ortega;r help > Asunto: Re: [R-es] Problema con la lectura de datos > > > Hola, sin indicar los tipos de variables si los lee, pero el problema est� en > que necesito calcular una matriz de correlaciones y genera el siguiente error: > Error in cor(Variables) : 'x' must be numeric > > Date: Tue, 10 Nov 2015 20:35:40 +0100 > Subject: Re: [R-es] Problema con la lectura de datos > From: [email protected]<mailto:[email protected]> > To: [email protected]<mailto:[email protected]> > CC: [email protected]<mailto:[email protected]> > > Hola, > > Prueba a leer el fichero sin indicar los tipos de las variables. > > Variables <- read.csv("C:/Users/usuario/Documents/variables2.csv", > header=TRUE, sep=";", comment.char="" , strip.white=FALSE, dec = ",") > > Saludos, > Carlos Ortega > www.qualityexcellence.es<http://www.qualityexcellence.es> > > > El 10 de noviembre de 2015, 20:04, Valentina Aguilera > <[email protected]<mailto:[email protected]>> escribi�: > Hola, > > Estoy tratando de leer una base de datos: tengo 39 columnas, de las cuales 38 > son variables y una es el nombre de las empresas. Por lo que escribo el > siguiente codigo: > > Variables <- read.csv("C:/Users/usuario/Documents/variables2.csv", > header=TRUE, sep=";", comment.char="" , > colClasses=c(Empresas="character", rep("numeric",38)), strip.white=FALSE, dec > = ",") > > Pero genera este error (y no se a que se deba, esto es, porque necesito > calcular la matriz de correlaciones y me dice que los valores no son > numericos): > > Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, : > scan() expected 'a real', got 'ND' > > Gracias mil. > > [[alternative HTML version deleted]] > > > > _______________________________________________ > > R-help-es mailing list > > [email protected]<mailto:[email protected]> > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es<http://www.qualityexcellence.es> > > [[alternative HTML version deleted]] > > > > > > > _______________________________________________ > R-help-es mailing list > [email protected]<mailto:[email protected]> > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > -- > Daniel > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > [email protected] > https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list [email protected] https://stat.ethz.ch/mailman/listinfo/r-help-es -- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list [email protected] https://stat.ethz.ch/mailman/listinfo/r-help-es
