Я работаю над фреймом данных экспрессии генов под названием expression
. Мои образцы принадлежат к разным подгруппам, указанным в имени столбца (т. Е. Все образцы, содержащие «adk» в имени столбца, принадлежат к одной и той же подгруппе)
adk1 adk2 bas1 bas2 bas3 non1 ...
gene1 1.1 1.3 2.2 2.3 2.8 1.6
gene2 2.5 2.3 4.1 4.6 4.2 1.9
gene3 1.6 1.8 0.5 0.4 0.9 2.2
...
Я уже определил подмножества, используя
adk <- expression[grepl('adk', names(expression))]
Затем я выполнил PCA на этом наборе данных, используя
pca = prcomp (t(expression), center = F, scale= F)
. Теперь я хочу построить график компьютеров, полученных от PCA, относительно друг друга в биплоте PCA. Для этого я хочу, чтобы все образцы, принадлежащие к одной и той же подгруппе, имели один и тот же цвет (так, например, все образцы «adk» должны быть зелеными, все образцы «bas» должны быть красными, а все образцы «не» должны быть синими). Я попытался использовать аргумент color
функции autoplot
из ggfortify, но мне не удалось заставить его использовать мои определенные подмножества.
Я был бы рад, если бы кто-нибудь мог мне помочь с этим! Спасибо :)
Edit : Я хотел бы дать вам пример того, что я хочу сделать, используя набор данных USArrests:
head(USArrests)
Murder Assault UrbanPop Rape
Alabama 13.2 236 58 21.2
Alaska 10.0 263 48 44.5
Arizona 8.1 294 80 31.0
Arkansas 8.8 190 50 19.5
California 9.0 276 91 40.6
Colorado 7.9 204 78 38.7
## Doing a PCA on the USArrests dataset
US.pca = prcomp(t(USArrests), center = F, scale = F)
## Now I can create a PCA biplot of PC1 and PC2 using the autoplot function (since I have ggfortify installed)
biplot1 = autoplot(US.pca,data=t(USArrests), x=1, y=2)
Я хочу все образцы, содержащие букву «e» в своем имени (в данном случае «Убийство» и «Изнасилование»), должны быть одного цвета. Образцы "UrbanPop" и "Assault" также должны быть индивидуального цвета. Надеюсь, это проясняет ситуацию :)
PS Я запускаю R в последней версии RStudio на Windows 10