我有一個文本文件,這種格式之間的值創建清單,開始和結束位置
begin end
1 10
25 35
40 50
37 48
... ...
我使用這些命令來創建包含所有可在值之間從「開始」和值的列表'end'列
x <- read.table("in.txt")
result <- vector("list",486)
for(i in 1:486){
result[[i]] <- c(x[i,1]:x[i,2])
}
lapply(result, write, "out.txt", append=TRUE, ncolumns = 1)
因此,我得到一個文件,其中所有的值都在不同的行上。現在我想要做些額外的事情。
而是隻用「開始」和「結束」欄輸入文件的,我有兩個額外的列,就像這樣:
begin end A B
1 10 x 0
25 35 x 1
40 50 x 2
37 48 y 0
我現在想的是,這些其他列的值也出現在我的輸出,所以我得到這樣的東西
position A B
1 X 0
2 X 0
3 X 0
...
10 X 0
...
40 X 2
41 X 2
...
37 Y 0
如何更改我的功能,使輸出看起來像這樣?
我發現使用'seq(begin,end,by = 1)'更好,因爲它會在'begin> end'時拋出一個錯誤。在某些情況下它可能是可取的。 – Arun 2013-04-05 13:30:02