r - 使用 dplyR 替换 R 中 data.frame 的所有列中的特殊字符串
问题描述
我的数据框看起来像这样
value <- c(0,0.1,0.2,0.4,0,"0.05,",0.05,0.5,0.20,0.40,0.50,0.60)
time <- c(1,1,"1,",1,2,2,2,2,3,3,3,3)
ID <- c("1,","2,","3,",4,1,2,3,4,1,2,3,4)
test <- data.frame(value, time, ID)
test
value time ID
1 0 1 1,
2 0.1 1 2,
3 0.2 1, 3,
4 0.4 1 4
5 0 2 1
6 0.05, 2 2
7 0.05 2 3
8 0.5 2 4
9 0.2 3 1
10 0.4 3 2
11 0.5 3 3
12 0.6 3 4
我想用“”替换所有列中的“,”,但我仍然收到错误 UseMethod("tbl_vars") 中的错误:没有适用于 'tbl_vars' 的方法应用于类“字符”的对象我想要我的数据看起来像这样
value time ID
1 0.00 1 1
2 0.10 1 2
3 0.20 1 3
4 0.40 1 4
5 0.00 2 1
6 0.05 2 2
7 0.05 2 3
8 0.50 2 4
9 0.20 3 1
10 0.40 3 2
11 0.50 3 3
12 0.60 3 4
编辑
test %>%
mutate_all(~gsub(",","",.))
解决方案
在这种情况下,最简单的可能是parse_number
从readr
包中使用,例如:
apply(test, 2, readr::parse_number)
或用dplyr
行话:
test %>% mutate_all(readr::parse_number)
推荐阅读
- sql - 使用 C# 在 SQL Server 和 EFCore 中货币或货币数据类型的最佳配对是什么?
- reactjs - 如何在 ReactJs 中获取 Material UI Stepper 组件数据
- typescript - 定义一个类型,其键和值是给定过滤器的键及其类型
- java - spring webflux 应用程序的 workerThread 池大小应该是多少?
- python - 获得 spaCy 的次优(或 n-best)解析
- angular - Restangular customPost:属性路径构造函数需要一个字符串或PropertyPath的一个实例,得到整数
- php - 如何在 Laravel 的 URL 中捕获参数
- python-click - 从标准输入接受提示和文件的正确方法是什么?
- git - Git 错误 - 致命:不会添加文件别名“file/path/index.html”(“file/path/index.html”已存在于索引中)
- postmates - Postmates - Postmates API 问题为 请完成安全检查以访问 api.postmates.com