R 如何读取缩进数据?
我有一个选项卡分隔的文件,如下所示:R 如何读取缩进数据?,r,data.table,R,Data.table,我有一个选项卡分隔的文件,如下所示: ID trait1 trait2 trait3 1111 1 1 0 2222 1 0 0 3333 0 0 1 4444 0 1 0 df V1 1111 1 1 0 1 NA 2222 1 0 0 2 NA 3333 0 0 1 3 NA 4444 0 1 0 请注意,数据行相对于列标题缩进 我尝试使用此语法读取文件并保留列名: df <- fre
ID trait1 trait2 trait3
1111 1 1 0
2222 1 0 0
3333 0 0 1
4444 0 1 0
df
V1 1111 1 1 0
1 NA 2222 1 0 0
2 NA 3333 0 0 1
3 NA 4444 0 1 0
请注意,数据行相对于列标题缩进
我尝试使用此语法读取文件并保留列名:
df <- fread("/path/to/file", sep="\t", data.table=FALSE, header=TRUE)
我尝试了
strip.white=TRUE
,但没有效果 既fread
又read.table
工作;额外的空白(缩进)不会引起任何问题
fread
library(data.table)
dt <- fread("ID trait1 trait2 trait3
1111 1 1 0
2222 1 0 0
3333 0 0 1
4444 0 1 0")
dt
# ID trait1 trait2 trait3
#1: 1111 1 1 0
#2: 2222 1 0 0
#3: 3333 0 0 1
#4: 4444 0 1 0
df <- read.table(text =
"ID trait1 trait2 trait3
1111 1 1 0
2222 1 0 0
3333 0 0 1
4444 0 1 0", header = T)
df
# ID trait1 trait2 trait3
#1 1111 1 1 0
#2 2222 1 0 0
#3 3333 0 0 1
#4 4444 0 1 0
readr
中的read_表2
也可以工作
readr::read_表2(
“ID trait1 trait2 trait3
1111 1 1 0
2222 1 0 0
3333 0 0 1
4444 0 1 0
"
)
#>#tibble:4 x 4
#>ID trait1 trait2 trait3
#>
#> 1 1111 1 1 0
#> 2 2222 1 0 0
#> 3 3333 0 0 1
#> 4 4444 0 1 0
由(v0.3.0)于2019-09-17创建。标题中有4列,但数据有5列;打字错误?@maurits抱歉,我纠正了我的错误。如果你不介意警告的话,你可以添加
,删除=1。这应该有一个GH问题,如果没有,我可以将文本中的问题复制为:“ID\ttrait1\ttrait2\ttrait3\n\t1111\t1\t1\t0\n\t2222\t1\t0\t0\n\t333\t0\t0\t1\n\t444\t0\t1\t0”
@thelatemailread.表
似乎与您给出的字符串没有任何问题。只有fread投诉。谢谢您的帮助read.table
适合我,但fread
不适合我。@TJ87是的,我可以用LateMail的示例字符串确认。我不知道为什么。我找到一家几年前就关门了的商店。