Я пытаюсь подсчитать записи, попадающие в окно 1000, проблема в том, что я использую для циклов, которые делают количество операций, которые необходимо выполнить достаточно большими (I ' m довольно новичок в R), и я получаю ошибку за пределами границ. Я знаю, что должен быть лучший способ сделать это.R-индекс за пределами с циклами
File (предупреждение файл является чуть более 100mb): bamDF.txt
Использование:
dget(file="bamDF.txt")
Сценарий:
attach(bamDF)
out <- matrix(0,1,ceiling((max(pos, na.rm=TRUE)-min(pos, na.rm=TRUE))/interval))
interval <- 1000
for(q in 1:nrow(bamDF)){
for(z in 1:ceiling((max(pos, na.rm=TRUE)-min(pos, na.rm=TRUE))/interval)){
if(min(pos, na.rm=TRUE)+interval*(z-1)<pos[q]&&pos[q]<(min(pos, na.rm=TRUE)+interval*(z))){
out[z,] <- out[z,]+1;
}
}
}
detach(bamDF)
Что именно вы подразумеваете под словом "fall in the 1000 window"? – nico
Представьте, что у вас есть номер строки от 1 до 5000, поэтому для окна 1000/bin у вас будет 5 бункеров в этом интервале, тогда вы будете смотреть на все числа, которые попадают в каждый бит и подсчитывают их. Надеюсь, что это немного разъяснит. – crysis405
Есть ли таблица (cut (yourdatatocount, seq (0, 5000, 1000))) 'что-то близкое к тому, что вы ищете? – Justin