应用于gsub各种列的最有效方法是什么?以下不起作用
x1=c("10%","20%","30%")
x2=c("60%","50%","40%")
x3 = c(1,2,3)
x = data.frame(x1,x2,x3)
per_col = c(1,2)
x = gsub("%","",x[,per_col])
Run Code Online (Sandbox Code Playgroud)
如何最有效地删除指定列中的"%"符号.我可以将它应用于整个数据框吗?在我不知道列百分比在哪里的情况下,这将非常有用.
您可以使用apply它将其应用于整个data.frame
apply(x, 2, function(y) as.numeric(gsub("%", "", y)))
x1 x2 x3
[1,] 10 60 1
[2,] 20 50 2
[3,] 30 40 3
Run Code Online (Sandbox Code Playgroud)
或者,您可以尝试lapply解决方案:
as.data.frame(lapply(x, function(y) gsub("%", "", y)))
x1 x2 x3
1 10 60 1
2 20 50 2
3 30 40 3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19298 次 |
| 最近记录: |