[英]R - apply() function what is the structure of output data?
我有以下數據框df
:
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和Bend-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? 這對我來說毫無意義...
使用mapply
可以簡化此任務:
unlist(mapply(seq, df$Bstart, df$Bend - 1))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.