Buenos días a todos, Estoy llevando a cabo un análisis PCA para un proyecto de fin de master y me encuentro atascada. Consigo llevar a cabo digo análisis y obtengo el screeplot correspondiente (adjunto al mensaje) en el que se ven las diferencias entre los dos grupos de datos (genes improntados y no improntados respectivamente) en función de si son improntados o no (con ello se vé claramente cómo afecta la PC1 a los resultados porque tengo esos dos grupos claramente diferenciados a ambos lados del eje Y). El problema que me encuentro es que he de buscar algún subgrupo dentro de estos datos (debido a la PC2) y mostrarlo gráficamente pero no sé como hacerlo. El código que llevo a cabo es el siguiente: > prcomp(genesNormalizados[9:12]) Standard deviations: [1] 1.5625489 0.9081340 0.8302286 0.2108412 Rotation: PC1 PC2 PC3 PC4 bpNormalizado -0.5911346 0.3843897 0.06367693 0.70622212 islasNormalizado -0.5875981 0.3965476 -0.08979227 -0.69958259 simpleNormalizado -0.3935477 -0.5693253 0.71687078 -0.08417327 tandemNormalizado -0.3878254 -0.6089854 -0.68846124 0.06891572 > summary(prcomp(genesNormalizados[9:12])) Importance of components: PC1 PC2 PC3 PC4 Standard deviation 1.5625 0.9081 0.8302 0.21084 Proportion of Variance 0.6104 0.2062 0.1723 0.01111 Cumulative Proportion 0.6104 0.8166 0.9889 1.00000> plot(genes.pca$scores[, 1], genes.pca$scores[, 2], col = c("blue","red")[unclass(genesNormalizados$Improntados)], pch = c(17, 18)) ¿Alguna sugerencia? Muchas gracias a todos por adelantado. Un saludo Ana Rosa Cortazar. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20110705/c910cf2a/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: captura.png Type: image/png Size: 20145 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20110705/c910cf2a/attachment-0001.png>
Hola Ana, Del detalle que aportas sobre la Rotación: Rotation: PC1 PC2 PC3 PC4 bpNormalizado -0.5911346 0.3843897 0.06367693 0.70622212 islasNormalizado -0.5875981 0.3965476 -0.08979227 -0.69958259 simpleNormalizado -0.3935477 -0.5693253 0.71687078 -0.08417327 tandemNormalizado -0.3878254 -0.6089854 -0.68846124 0.06891572 y sobre el segundo componente lineal (PC2), puedes ver que "simpleNormalizado" y "tandemNormalizado" son los elementos que más peso reciben. A este PC2 puedes acceder y representar los pesos de cada elemento. Con esta representación puedes hacer ver si la existencia de estas diferencias en los pesos. El acceder y representar PC2 se haría de la siguiente forma: g1<-prcomp(genesNormalizados[9:12])[,2] plot(sort(g1, descending=F), ylab="Pesos") text(1:length(g1), g1, labels=names(g1)) Saludos, Carlos Ortega www.qualityexcellence.es 2011/7/5 Ana Rosa Cortazar <anarokin@gmail.com>> Buenos días a todos, > > Estoy llevando a cabo un análisis PCA para un proyecto de fin de master y > me encuentro atascada. Consigo llevar a cabo digo análisis y obtengo el > screeplot correspondiente (adjunto al mensaje) en el que se ven las > diferencias entre los dos grupos de datos (genes improntados y no > improntados respectivamente) en función de si son improntados o no (con ello > se vé claramente cómo afecta la PC1 a los resultados porque tengo esos dos > grupos claramente diferenciados a ambos lados del eje Y). El problema que me > encuentro es que he de buscar algún subgrupo dentro de estos datos (debido a > la PC2) y mostrarlo gráficamente pero no sé como hacerlo. > > El código que llevo a cabo es el siguiente: > > > prcomp(genesNormalizados[9:12]) > > Standard deviations: > > [1] 1.5625489 0.9081340 0.8302286 0.2108412 > > > Rotation: > > PC1 PC2 PC3 PC4 > > bpNormalizado -0.5911346 0.3843897 0.06367693 0.70622212 > > islasNormalizado -0.5875981 0.3965476 -0.08979227 -0.69958259 > > simpleNormalizado -0.3935477 -0.5693253 0.71687078 -0.08417327 > > tandemNormalizado -0.3878254 -0.6089854 -0.68846124 0.06891572 > > > summary(prcomp(genesNormalizados[9:12])) > > Importance of components: > > PC1 PC2 PC3 PC4 > > Standard deviation 1.5625 0.9081 0.8302 0.21084 > > Proportion of Variance 0.6104 0.2062 0.1723 0.01111 > > Cumulative Proportion 0.6104 0.8166 0.9889 1.00000 > > > plot(genes.pca$scores[, 1], genes.pca$scores[, 2], col = c("blue", > "red")[unclass(genesNormalizados$Improntados)], pch = c(17, 18)) > > > ¿Alguna sugerencia? Muchas gracias a todos por adelantado. > > Un saludo > > Ana Rosa Cortazar. > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]
Muchas gracias por contentar tan rápido Carlos, pero no era eso lo que buscaba. Yo lo que quiero hacer es, en el gráfico de scores que os he mandado, hacer otra diferenciación: ya tengo la que me indica cuáles son los genes improntados y no improntados pero me faltaría otra en la que se viese implicada la PC2, no se si me explico muy bien :S Gracias otra vez Ana Rosa. El 5 de julio de 2011 16:00, Carlos Ortega <coforfe@gmail.com> escribió:> Hola Ana, > > Del detalle que aportas sobre la Rotación: > > Rotation: > > PC1 PC2 PC3 PC4 > > bpNormalizado -0.5911346 0.3843897 0.06367693 0.70622212 > > islasNormalizado -0.5875981 0.3965476 -0.08979227 -0.69958259 > > simpleNormalizado -0.3935477 -0.5693253 0.71687078 -0.08417327 > > tandemNormalizado -0.3878254 -0.6089854 -0.68846124 0.06891572 > > y sobre el segundo componente lineal (PC2), puedes ver que > "simpleNormalizado" y "tandemNormalizado" son los elementos que más peso > reciben. > > A este PC2 puedes acceder y representar los pesos de cada elemento. > Con esta representación puedes hacer ver si la existencia de estas > diferencias en los pesos. > > El acceder y representar PC2 se haría de la siguiente forma: > > g1<-prcomp(genesNormalizados[9:12])[,2] > plot(sort(g1, descending=F), ylab="Pesos") > text(1:length(g1), g1, labels=names(g1)) > > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > > 2011/7/5 Ana Rosa Cortazar <anarokin@gmail.com> > >> Buenos días a todos, >> >> Estoy llevando a cabo un análisis PCA para un proyecto de fin de master y >> me encuentro atascada. Consigo llevar a cabo digo análisis y obtengo el >> screeplot correspondiente (adjunto al mensaje) en el que se ven las >> diferencias entre los dos grupos de datos (genes improntados y no >> improntados respectivamente) en función de si son improntados o no (con ello >> se vé claramente cómo afecta la PC1 a los resultados porque tengo esos dos >> grupos claramente diferenciados a ambos lados del eje Y). El problema que me >> encuentro es que he de buscar algún subgrupo dentro de estos datos (debido a >> la PC2) y mostrarlo gráficamente pero no sé como hacerlo. >> >> El código que llevo a cabo es el siguiente: >> >> > prcomp(genesNormalizados[9:12]) >> >> Standard deviations: >> >> [1] 1.5625489 0.9081340 0.8302286 0.2108412 >> >> >> Rotation: >> >> PC1 PC2 PC3 PC4 >> >> bpNormalizado -0.5911346 0.3843897 0.06367693 0.70622212 >> >> islasNormalizado -0.5875981 0.3965476 -0.08979227 -0.69958259 >> >> simpleNormalizado -0.3935477 -0.5693253 0.71687078 -0.08417327 >> >> tandemNormalizado -0.3878254 -0.6089854 -0.68846124 0.06891572 >> >> > summary(prcomp(genesNormalizados[9:12])) >> >> Importance of components: >> >> PC1 PC2 PC3 PC4 >> >> Standard deviation 1.5625 0.9081 0.8302 0.21084 >> >> Proportion of Variance 0.6104 0.2062 0.1723 0.01111 >> >> Cumulative Proportion 0.6104 0.8166 0.9889 1.00000 >> >> > plot(genes.pca$scores[, 1], genes.pca$scores[, 2], col = c("blue", >> "red")[unclass(genesNormalizados$Improntados)], pch = c(17, 18)) >> >> >> ¿Alguna sugerencia? Muchas gracias a todos por adelantado. >> >> Un saludo >> >> Ana Rosa Cortazar. >> _______________________________________________ >> R-help-es mailing list >> R-help-es@r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> >> >[[alternative HTML version deleted]]