Я хочу сравнить значения экспрессии белков (n = 465 белков) для двух групп пациентов (резистентных и чувствительных).
У меня 11 устойчивых пациентов и 8 чувствительных пациентов. Я хотел бы сравнить (ttest) значения экспрессии белка 1 устойчивой группы (от A res
до K res
) с показателями чувствительной группы (от L sens
до S sens
), белка 2 (устойчивого) с белком 2 (чувствительным) и так далее. В качестве вывода мне нужны только белки, у которых p-значение составляет ‹0,05.
Я пытался это сделать (см. ниже), но что-то не так и не могу понять что.
X Protein.1 Protein.2 Protein.3 Protein.4 Protein.5 Protein.6
1 A res 4127 16886 1785 1636 407 135
2 B res 10039 32414 3144 1543 601 154
3 C res 527 1059 1637 317 229 107
4 D res 553 3848 7357 1168 1549 441
5 E res 2351 2272 5868 2606 517 159
6 F res 822 1767 2110 818 293 75
7 G res 673 1887 511 471 214 NA
8 H res 5769 2206 2041 517 355 298
9 I res 1660 4221 1921 629 383 104
10 J res 3281 1804 2400 225 268 52
11 K res 3383 1882 1935 185 NA NA
12 L sens 10810 20136 2350 1143 527 160
13 M sens 5941 14873 3550 943 308 NA
14 N sens 1100 2325 1359 561 542 284
15 O sens 85 587 619 364 85 52
16 P sens 2321 6335 6494 994 NA NA
17 Q sens 103810 7102 7986 1464 439 187
18 R sens 1174 2076 1423 340 186 70
19 S sens 1829 973 1343 380 453 221
data <- read.csv("ProteinDataResSens.csv", sep=";", na.strings="weak", header=TRUE)
res <- data.frame(data[1:11, ], row.names=NULL)
colnames(res) <- paste("res", 1:length(res), sep="_")
sens <- data.frame(data[12:19, ], row.names=NULL)
colnames(sens) <- paste("sens", 1:length(sens), sep="_")
com <- combn(c(colnames(res), colnames(sens)), 2)
p <- apply(com, 2, function(x) t.test(data[, x[1]], data[, x[2]])$p.val)
data.frame(comparison=paste(com[1, ], com[2, ],sep=" vs."), p.value=p)
Большое спасибо за любую помощь!
com <- c(colnames(res),...)
сбивает с толку. Судя по вашему описанию, вы хотите сравнитьres
с «чувством» для каждого столбцаprotein
. - person akrun   schedule 08.12.2014