我有一列高度格式为X'X“(英尺和英寸),需要帮助将其转换为英寸。例如,6'2”将是74(英寸)。
使用dput()
,这是列表:
h <- structure(c(3L, 2L, 5L, 1L, 4L), .Label = c("4'8\"", "5'1.5\"",
"5'10.5\"", "5'2.5\"", "5'6\""), class = "factor")
答案 0 :(得分:8)
你有一个因素。您可以将其转换为字符向量,在英尺和英寸符号上拆分,然后使用sapply
在匿名函数中进行转换:
h <- structure(c(3L, 2L, 5L, 1L, 4L), .Label = c("4'8\"", "5'1.5\"",
"5'10.5\"", "5'2.5\"", "5'6\""), class = "factor")
sapply(strsplit(as.character(h),"'|\""),
function(x){12*as.numeric(x[1]) + as.numeric(x[2])})
[1] 70.5 61.5 66.0 56.0 62.5