如何在R

时间:2015-05-06 15:10:34

标签: r colors pca

我是R环境的新手,并开始在练习文件中使用它。 我创建了一个双标图(双标图是我需要做的)和管理选择我想要的PC。我寻找可能存在的答案,但我不明白所有的论点,但我可能会错过答案。

mat=read.csv('data.txt',sep="\t",row.name=1,check.names=F,header=T)
mat_as_matrix<-as.matrix(mat)
tmat=t(mat_as_matrix)
pca_tmat=prcomp(tmat)
biplot(pca_tmat, choices=c(3,4), col=c("blue","green"))

我的输入数据是这样的:

Taxon   S1  S2  S3  S4  S5  S6  S7  S8  S9  S10 S11
OTU1    45  32  34  55  32  4   12  2   1   4   15
OTU2    1   2   3   2   1   23  32  21  26  34  23
OTU3    1   1   2   1   3   1   2   1   2   1   1
OTU4    12  21  23  45  31  342 342 345 333 322 150

我还做了一些像下面这样的注意事项来删除箭头。我正在尝试删除OTU的标签并将'Sn'标签变为点

biplot(pca_tmat$x,pca_tmat$y,type="p", var.axes = F, choices=c(3,4), col=c('blue','green')['S1','S3'])

但是我得到以下错误而没有任何更改: 1L中的错误:p:长度为0的参数

我需要做的是给每个样品一个不同的颜色:Sx,Sy,Sz第一颜色Si,Sj第二颜色,Sa,Sb第三颜色等...

1 个答案:

答案 0 :(得分:2)

我不确定如何使用biplot执行此操作,但如果您使用原始PCA输出,则可以执行您想要的任何操作。也许是这样的:

data <- replicate(100, rnorm(100)) pca <- prcomp(data) raw <- pca$x[,1:2] plot(raw[,1], raw[,2], col=rainbow(nrow(raw)), pch=20)

...将为您提供您正在寻找的东西。注意我是如何提取原始PCA输出的,让我自己制作双图。

听起来有点像这是一个家庭作业问题;如果是,那么我保证使用prcomp的输出将使您更好地了解PCA中发生的事情。它值得付出努力:D