GEOmirror
В GEOmirror зарезервированы матрицы экспрессии и клинические данные, которые включают в себя почти все данные чипов из базы данных GEO.
Я не планирую обновлять GEOmirror, поскольку функции GEOmirror были включены в мой пакет annoprobe. Однако «одно дерево» предложило мне изменить форму одного зависимого пакета. Многие поклонники также сообщили, что они не резервировали новые данные чипа из базы данных GEO в течение двух лет. Поэтому я работал сверхурочно во время весеннего праздника и сделал большое обновление, которое было выпущено на gitee для удобства китайских пользователей.
Теоретически можно использовать следующий код, но конфигурации компьютеров разных людей различаются. У некоторых людей нет RStudio, только R. У других нет среды git.
library(remotes)
url='https://gitee.com/jmzeng/GEOmirror.git'
install_git(url)
Самый простой способ — загрузить сжатый файл по ссылке https://gitee.com/jmzeng/GEOmirror/repository/archive/master.zip. После распаковки файла перейдите в папку proj и откройте rstudio. Затем нажмите build.
Для каждого набора данных пакет GEOmirror предоставляет функцию geoChina для загрузки:
library(GEOquery)
library(GEOmirror)
## скачать данные GSE95166
# https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE95166
#eSet=getGEO('GSE95166', destdir=".", AnnotGPL = F, getGPL = F)[[1]]
library(GEOmirror)
eSet=geoChina('GSE95166')
eSet
eSet=eSet[[1]]
Последующий анализ данных представляет собой стандартный процесс анализа различий в экспрессии. Я предоставляю пример кода ниже:
probes_expr <- exprs(eSet);dim(probes_expr)
head(probes_expr[,1:4])
boxplot(probes_expr,las=2)
## pheno info
phenoDat <- pData(eSet)
head(phenoDat[,1:4])
# https://www.ncbi.nlm.nih.gov/pubmed/31430288
groupList=factor(c(rep('npc',4),rep('normal',4)))
table(groupList)
eSet@annotation
# GPL15314 Arraystar Human LncRNA microarray V2.0 (Agilent_033010 Probe Name version)
genes_expr=probes_expr
library("FactoMineR")
library("factoextra")
dat.pca <- PCA(t(genes_expr) , graph = FALSE)
dat.pca
fviz_pca_ind(dat.pca,
geom.ind = "point",
col.ind = groupList,
addEllipses = TRUE,
legend.title = "Groups"
)
library(limma)
design=model.matrix(~factor(groupList))
design
fit=lmFit(genes_expr,design)
fit=eBayes(fit)
DEG=topTable(fit,coef=2,n=Inf)
head(DEG)
# Мы обнаружили, что 2107 lncRNAs были активированы, а 2090 lncRNAs подавлены более чем в 2 раза, включая NKILA среди этих подавленных lncRNAs (рис. 1A, GSE95166).
## для графика вулкана
df=DEG
attach(df)
df$v= -log10(P.Value)
df$g=ifelse(df$P.Value>0.05,'stable',
ifelse( df$logFC >1,'up',
ifelse( df$logFC < -1,'down','stable') )
)
table(df$g)
df$name=rownames(df)
head(df)
library(ggpubr)
ggpubr::ggscatter(df, x = "logFC", y = "v", color = "g",size = 0.5,
label = "name", repel = T,
label.select =head(rownames(df)),
palette = c("#00AFBB", "#E7B800", "#FC4E07") )
detach(df)
x=DEG$logFC
names(x)=rownames(DEG)
cg=c(names(head(sort(x),100)),
names(tail(sort(x),100)))
cg
library(pheatmap)
n=t(scale(t(genes_expr[cg,])))
n[n>2]=2
n[n< -2]=-2
n[1:4,1:4]
ac=data.frame(groupList=groupList)
rownames(ac)=colnames(n)
pheatmap(n,show_colnames =F,show_rownames = F,
annotation_col=ac)
Другие наборы данных можно загрузить аналогичным образом:
# GSE165216
library(GEOquery)
library(GEOmirror)
## скачать данные GSE165216
# https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE165216
#eSet=getGEO('GSE165216', destdir=".", AnnotGPL = F, getGPL = F)[[1]]
library(GEOmirror)
eSet=geoChina('GSE165216')
eSet
eSet=eSet[[1]]
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )