我正在使用data.table::fread
读取csv文件。是否有任何方法可以指定仅一列的类型,并让fread
推断所有其他列?
背景:我有一个约60列的csv文件。对于除一列外的所有列,fread都会推断正确的数据类型。但是,还有一列是带有前导零的id列,应将其读取为字符,但应解析为数字,以除去前导零。
迷你示例:
csv文件:
id, size, weight 001, 180, 75 0001, 190, 90 002, 160, 58
所需的数据表:
df = data.table(id=c("001", "0001", "002"), size=c(180, 190, 160), weight=c(75, 90, 58))
[我知道我可以使用
colClasses
参数来指定列类的列表,但我不希望这样,因为fread
会正确推断除一列之外的所有列。
我不能df[,id] <- as.character(df[,id])
,因为通过删除前导零会丢失信息。
我正在使用data.table :: fread读取csv文件。有什么方法可以指定仅一列的类型,并让fread推断所有其他列?背景:我有一个约60列的csv文件。...
正如Roland在评论中指出的,我们可以使用参数colClasses
“带有命名向量,该向量通过名称指定列的子集的类型”。