所以我使用 r 和包 Bioconductor (oligo), (limma) 来分析一些微阵列数据。
我在配对分析中遇到了麻烦。
所以这是我的表型数据
ph@data
ph@data
index filename group
WT1 WT WT1 WT
WT2 WT WT2 WT
WT3 WT WT3 WT
WT4 WT WT4 WT
LT1 LT LT1 LT
LT2 LT LT2 LT
LT3 LT LT3 LT
LT4 LT LT4 LT
TG1 TG TG1 TG
TG2 TG TG2 TG
TG3 TG TG3 TG
TG4 TG TG4 TG
所以为了分析我做了这个代码:
colnames(ph@data)[2]="source"
ph@data
groups = ph@data$source
f = factor(groups,levels = c("WT","LT","TG"))
design = model.matrix(~ 0 + f)
colnames(design)=c("WT","LT","TG")
design
data.fit = lmFit(normData,design)
> design
WT LT TG
1 1 0 0
2 1 0 0
3 1 0 0
4 1 0 0
5 0 1 0
6 0 1 0
7 0 1 0
8 0 1 0
9 0 0 1
10 0 0 1
11 0 0 1
12 0 0 1
attr(,"assign")
[1] 1 1 1
attr(,"contrasts")
attr(,"contrasts")$f
[1] "contr.treatment"
然后我起诉这个来比较我的组:
contrast.matrix = makeContrasts(LT-WT,TG-WT,LT-TG,levels=design)
data.fit.con = contrasts.fit(data.fit,contrast.matrix)
data.fit.eb = eBayes(data.fit.con)
所以在这一切之后,我想比较我的组:
ph@data[ ,2] = c("control","control","control","control","littermate","littermate","littermate","littermate","transgenic","transgenic","transgenic","transgenic")
colnames(ph@data)[2]="Treatment"
ph@data[ ,3] = c("B1","B2","B3","B4","B1","B2","B3","B4","B1","B2","B3","B4")
colnames(ph@data)[3]="BioRep"
ph@data```
groupsB = ph@data$BioRep
groupsT = ph@data$Treatment
fb = factor(groupsB,levels=c("B1","B2","B3","B4"))
ft = factor(groupsT,levels=c("control","littermate","transgenic"))```
paired.design = (~ fb + ft)
所以现在我的 phenoData 看起来像这样:
index Treatment BioRep
WT1 WT control B1
WT2 WT control B2
WT3 WT control B3
WT4 WT control B4
LT1 LT littermate B1
LT2 LT littermate B2
LT3 LT littermate B3
LT4 LT littermate B4
TG1 TG transgenic B1
TG2 TG transgenic B2
TG3 TG transgenic B3
TG4 TG transgenic B4```
B1 是生物复制,然后我有野生型、同窝仔和转基因组
比较我的样品我正在尝试这个
colnames(paired.design)=c("Intercept","B4vsB1","B3vsB1","B2vsB1","B4vsB2","B3vsB2","B4vsB3","littermatevscontrol","transgenicvscontrol")
但后来我得到了这个错误:
Error in `colnames<-`(`*tmp*`, value = c("Intercept", "WTvsLT", "WTvsTG", :
attempt to set 'colnames' on an object with less than two dimensions
我做错了什么,这是比较我的数据的正确方法?
data.fit = lmFit(data.rma,paired.design)
data.fit$coefficients