Я новичок в R и пытаюсь получить средства набора данных экспрессии генов. Это файл csv, содержащий 185 строк (имена генов) и 30 столбцов (временные точки в трех экземплярах).
Я использую следующие команды для импорта файла csv. файл в R
read.csv ('~ / Рабочий стол / WNV Spleen.csv', row.names = 1)
CM1 CM2 CM3 D1M1 D1M2 D1M3 D2M1 D2M2 etc.....
Atf2 3152.9 6178.12 4660.91 6900.13 8172.9 7928.51 6100.99 6438.84
Bcl6 123.64 491.09 52.53 575.6 673.36 415.57 635.76 364.4
etc....
затем я проверяю, что он читается как матрица
sp ‹-as.matrix (read.csv ('~ / Desktop / WNV Spleen.csv', row.names = 1)) is.matrix (sp) [1] ИСТИНА
затем я пытаюсь выполнить rollapply, используя следующую команду, которая выполняет функцию, но не правильную. Хотите рассчитать среднее значение для каждой строки.
z<-zoo(sp)
> rollapply(z[,1], width=3, mean, by=3, by.column=TRUE)
2 5 8 11 14 17 20 23 26 29 32 35 38
2939.96000 19679.89333 111739.20333 36303.04667 18477.80333 137.38000 116.77333 295.37000 103.03667 123.64333 96.16667 467.09667 22448.12667
41 44 47 50 53 56 59 62 65 68 71 74 77
7143.83333 9575.48667 549.52333 157.99000 274.76333 329.71667 288.50000 17893.93333 3221.59333 1621.10000 9513.66667 906.71667 54.95333
80 83 86 89 92 95 98 101 104 107 110 113 116
377.80000 61.82333 597.60667 281.63000 941.06333 48.08333 82.42667 61.82000 1298.25333 274.76667 6985.84667 157.98667 838.03000
119 122 125 128 131 134 137 140 143 146 149 152 155
2301.14000 1099.05333 2198.10667 3695.56333 3544.44000 26713.82667 309.10667 899.84667 872.37333 2328.61667 2685.80667 3125.43000 934.19333
158 161 164 167 170 173 176 179 182
4190.13333 6683.60667 762.46667 3049.86667 583.87000 460.23000 590.74000 171.72667 1689.79333
Попробуйте переписать команду следующим образом:
> rollapply(z[1,], width=3, mean, by=3, by.row=TRUE)
Error in seq.default(start.at, NROW(data), by = by) :
wrong sign in 'by' argument
> rollapply(z[2, ], width=3, mean, by=3, by.row=TRUE)
Error in seq.default(start.at, NROW(data), by = by) :
wrong sign in 'by' argument
Так что не сработало. Может кто-нибудь помочь мне разобраться, что я сделал не так ??? Заранее спасибо!!!!
Хосе
?rowMeans
. ВызовrowMeans(sp)
даст вам вектор, состоящий из среднего значения каждой строкиsp
. - person fotNelton   schedule 24.01.2014