[英]write.table in R produces spaces in delimited
我正在編寫一個數據框作為 .bed 文件; 數據框看起來不錯,但是當我使用以下方法導出它時:
write.table(x = bed_file,
file = 'merged_out.bed',
row.names = F,
col.names = F,
quote = F,
sep = '\t')
然后在終端中查看merged.bed 的頭部,一些行是空格分隔的,但大多數是制表符分隔的。 . . 有任何想法嗎?
chr1 3816670 3818113 181 4
chr1 6452977 6454435 181 1
chr1 8075042 8075406 181 5
chr1 8389451 8389713 181 1
chr1 11190170 11190527 181 1
chr1 14454661 14454861 181 2
chr1 16212079 16213143 181 2
我懷疑那些不是“空格”,而只是實際上是制表符的空格。
驗證:
### the first row
readLines("merged_out.bed", n = 1)
# [1] "chr1\t3816670\t3818113\t181\t4"
### the first seemingly-wrong line
readLines("merged_out.bed", skip = 4, n = 1)
# [1] "chr1\t3816670\t3818113\t181\t4"
很明顯,這兩行中沒有" "
字符。
如果您想查看文件中是否有任何文字空格,此表達式將驗證整個文件(假設字段中沒有合法空格):
any(grepl(" ", readLines("merged_out.bed")))
# [1] FALSE
數據准備:
dat <- read.table(text = "
chr1 3816670 3818113 181 4
chr1 6452977 6454435 181 1
chr1 8075042 8075406 181 5
chr1 8389451 8389713 181 1
chr1 11190170 11190527 181 1
chr1 14454661 14454861 181 2
chr1 16212079 16213143 181 2 ")
write.table(dat, "merged_out.bed",
row.names = FALSE, col.names = FALSE, quote = FALSE, sep = "\t")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.