我不知道如何使用fread中的colClasses选项来 Select 特定的列.我试着用几种方法使用NULL,但都没用.这里有一个简单的例子.我只想要第1列和第3列.

dt <- data.table(a=1:5,b=6:10,c=10:14)
write.csv(dt,"dt.csv",row.names=F)

dt <- fread("dt.csv",colClasses=?)

packageVersion("data.table")
[1] ‘1.8.10’

getRversion()
[1] ‘3.0.1’

导入的数据集应如下所示:

   a  c
1: 1 10
2: 2 11
3: 3 12
4: 4 13
5: 5 14

推荐答案

UPDATE:这一功能现在在v1中实现.8.11自966年12月10日起生效.从NEWS开始:

freaddropselectNULLcolClasses中被实现.到

?fread中的例子如下:

data = "A,B,C,D\n1,3,5,7\n2,4,6,8\n"

# colClasses    
fread(data, colClasses=c(B="character",C="character",D="character"))
fread(data, colClasses=list(character=c("B","C","D")))    # saves typing
fread(data, colClasses=list(character=2:4))     # same using column numbers

# drop
fread(data, colClasses=c("B"="NULL","C"="NULL"))   # as read.csv
fread(data, colClasses=list(NULL=c("B","C")))      # same
fread(data, drop=c("B","C"))      # same but less typing, easier to read
fread(data, drop=2:3)             # same using column numbers

# select
# (in read.csv you need to work out which to drop)
fread(data, select=c("A","D"))    # less typing, easier to read
fread(data, select=c(1,4))        # same using column numbers

R相关问答推荐

有没有方法将琴弦完全捕捉到R中的多边形?

将复杂的组合列表转换为数据框架

隐藏e_mark_line的工具提示

如何删除gggvenn与gggplot绘制的空白?

如何在R中对深度嵌套的tibbles中的非空连续行求和?

如何使用tryCatch执行语句并忽略警告?

迭代到DataFrame列并获得成对的值列表(col1->;col2、col2->;col3、col3->;col4等)的正确方法.

使用`Watch()`和`renderUI()`时,不再满足仍出现在SHILINY AFTER条件中的条件输入

您是否可以使用facet_rap设置一个较低的限制来对ggmap上的比例中断进行zoom ?

在gggraph中显示来自不同数据帧的单个值

删除在R中的write.table()函数期间创建的附加行

如何从嵌套数据中自动创建命名对象?在R中

为什么不能使用lApply在包装函数中调用子集

替换在以前工作的代码中有x行&q;错误(geom_sf/gganimate/dow_mark)

如何使用list_rind在列表中保留已命名但不包含第0行的记录?

如何捕获这个shiny 的、可扩展的react 性用户输入矩阵作为另一个react 性对象,以便进一步操作?

从字符串01JAN2021创建日期

根据向量对列表元素进行排序

删除r中每个因素级别的最后2行

具有某些列的唯一值的数据帧