2014-02-09 49 views
0

我有以下數據框dfR - apply()函數輸出數據的結構是什麼?

chrom value Astart  Aend Bstart Bend 
chr1  0  0 54519752 17408 17431 
chr1  0  0 54519752 17368 17391 
chr1  0  0 54519752 567761 567783 
chr1  0  0 54519752 1231524 1231545 
chr1  0  0 54519752 1231489 1231509 
chr1  0  0 54519752 1247918 1247941 

下面的代碼應該給我Bstart和彎曲-1之間的序列的每一行,

s <- unlist(apply(df, MARGIN=1, FUN=function(x) seq(x[5], as.numeric(x[6])-1))) 

它似乎是正確的,但我不瞭解輸出:

> head(s,28) 
    11 12 13 14 15 16 17 18 19 110 111 112 113 114 
17408 17409 17410 17411 17412 17413 17414 17415 17416 17417 17418 17419 17420 17421 
    115 116 117 118 119 120 121 122 123 21 22 23 24 25 
17422 17423 17424 17425 17426 17427 17428 17429 17430 17368 17369 17370 17371 17372 

這是一個數據幀嗎?整數列表?上限是什麼意思,它來自哪裏?它爲什麼從11開始?爲什麼它從19跳到110然後又跳到21?這是沒有意義的我...

回答

1

這個任務是mapply簡單:

unlist(mapply(seq, df$Bstart, df$Bend - 1)) 
+0

哦,謝謝!所以我試圖弄清楚的上限實際上是完全不相關的?那是一種解脫 – biohazard