您好我有一个与斜线相关的问题。
我正在处理的数据如下:
X Y Z
12/22 14/32 22/34
我想得到斜杠之前和之后的值的平均值。
X Y Z
17 18 28
我该怎么做?
答案 0 :(得分:2)
获取每个单元格的平均值,即使data.frame中有多行:
as.data.frame(
apply(dat, 1:2, function(x) {
mean(as.integer(unlist(strsplit(x,"/"))))
}
)
)
答案 1 :(得分:1)
另一种解决方案:
as.data.frame(lapply(dat, function(x) mean(c(as.integer(sub("/.+", "", x)),
as.integer(sub(".+/", "", x))))))
其中dat
是数据框的名称。
答案 2 :(得分:0)
values<-c("12/22","14/32","22/34")
> unlist(lapply(strsplit(values,"/"),function(values2){mean(as.numeric(values2))}))
[1] 17 23 28