【发布时间】:2017-02-17 06:23:55
【问题描述】:
如何从 R 的数据框中的某些列中删除单位?
我有一个数据框(三行三列),如下所示:
1 mm apple 4 cm
11 mm car 8 cm
22 mm 3 3 cm
结果应该是这样的:
1 apple 4
11 car 8
22 3 3
【问题讨论】:
标签: r
如何从 R 的数据框中的某些列中删除单位?
我有一个数据框(三行三列),如下所示:
1 mm apple 4 cm
11 mm car 8 cm
22 mm 3 3 cm
结果应该是这样的:
1 apple 4
11 car 8
22 3 3
【问题讨论】:
标签: r
我们遍历感兴趣的列并使用sub 删除字符串末尾($)的非数字子字符串(\\s+\\D+)
DF[-2] <- lapply(DF[-2], function(x) as.numeric(sub("\\s+\\D+$", "", x)))
DF
# v1 v2 v3
#1 1 apple 4
#2 11 car 8
#3 22 3 3
DF <- data.frame(v1 = c('1 mm', '11 mm', '22 mm'), v2 = c('apple',
'car', 3), v3 = c('4 cm', '8 cm', '3 cm'), stringsAsFactors=FALSE)
【讨论】: