r - 从文本中去除数字:R
问题描述
你好,我的数据集包含文本、整数和小数,文本是一个包含所有这些混合的段落,试图从文本内容中只去除整数和小数,大约有 30k特罗条目。
数据输入格式:
- 这个。是一个很好的 13 部分。135.67 代码
- 如何在内容6879中去除66.8
- 从中获取数字 3475.5。数据。879 在这 369426
输出:
13 135.67
66.8 6879
3475.5 879 369426
我尝试一一替换所有字母,但 26+26 替换所有使代码冗长,并替换“。” 替换“。” 从数字也谢谢,Praveen
解决方案
不要忘记R
已经内置了正则表达式函数:
input <- c('This. Is a good 13 part. of 135.67 code', 'how to strip 66.8 in the content 6879',
'get the numbers 3475.5 from. The data. 879 in this 369426')
m <- gregexpr('\\b\\d+(?:\\.\\d+)?\\b', input)
(output <- lapply(regmatches(input, m), as.numeric))
这产生
[[1]]
[1] 13.00 135.67
[[2]]
[1] 66.8 6879.0
[[3]]
[1] 3475.5 879.0 369426.0
推荐阅读
- python - 在 pandas 中使用 `isin(list1)` 来识别包含 list1 中所有项目的列中的值
- php - 在php中检测更大的日期
- amazon-web-services - 如何自动启动、执行和停止 EC2?
- android - Cordova Emulate Android 找不到 Gradle 或安装的 Android Studio,即使它在那里
- postgresql - 使用 postgreSQL 从多个服务器查询表
- java - MYSQL/JDBC 形成一个 JDBC 连接 URL 以连接到名称中带有问号 (?) 的数据库?
- c++ - OSG 地球相机位置
- angular - 如何在 [ngClass] 中混合条件和串联
- parsing - 使用 YamlDotNet 时可以在文件中包含空行吗
- python - 如何禁用 Facebook Messenger 持久菜单?