我正在使用readr的read_delim,如下所示:
focals <- read_delim('~/all_focals2.txt', delim='\t',
col_names=c("1", "focal", "2", "model"),
col_types=cols_only(focal = col_double(), model = col_character()))在我的数据中,“焦点”列包含的数据如下:
55.0 mm
7.8 mm
16.0 mm诸若此类。我想要双倍的数据,所以我想忽略‘mm’后缀。
我找到了这个错误评论,这似乎表明,这在今天的readr中是不可能的,除非将列作为字符串读取,然后作为第二步进行转换。
但是,我只能假设必须有一种方法来编写自定义列规范,对吗?您可能有可能编写自己的col_focal_length()函数(它构建在幕后的col_double()之上),以实现正确的get解析吗?
通过覆盖编辑解决方案:
focals$focal <- as.double(gsub(" mm$", "", focals$focal))但就像我说的,我想让它直接从数据集中.
发布于 2017-08-16 17:35:41
试试这个:
as.double(parse_number(focals$focal))如果这有效的话,请告诉我们。谢谢
https://stackoverflow.com/questions/45662703
复制相似问题