我有一个由三列组成的 ascii 数据集,但只有最后两列是实际数据。现在我想使用read.csv(file = "result1", sep= " ")
. R 读取所有三列。我该如何避免这种情况?
使用 read.csv 仅读取三列中的两列
机器算法验证
r
2022-03-05 22:11:16
3个回答
您可以使用colClasses
参数来read.csv
选择所需的列。在这种情况下,您可以设置colClasses
为c("NULL", NA, NA)
read.csv(file="result1", sep=" ", colClasses=c("NULL", NA, NA))
更一般地说,您可以使用 colClasses 指定特定类型的列;NA
意味着使用默认方法,即尝试自动找出列是什么。read.csv
有关详细信息,请参阅帮助页面。
另一种选择是读入整个文件,但只保留两列,例如:
read.csv(file = "result1", sep = " ")[ ,1:2]
或者,使用列名,例如。如果列名为 'col1, col2, col3'
read.csv(file = "result1", sep = " ")[ ,c('col1', 'col2')]
与提供的答案相比,这需要更少的时间
library(data.table)
fread(file="result1", sep=" ", colClasses=c("NULL", NA, NA))
其它你可能感兴趣的问题