r - 强制 gsub 保留尾随零

标签 r regex gsub

我想提取“.”后面的数字来自 data.frame[ ,1] 并将它们存储在第二列中,如下所示:

1 6.354 354 
2 6.355 355
3 6.363 363
4 6.367 367
5 6.378 378
6 6.419 419
7 6.426 426
8 6.427 427
9 6.428 428
10 6.431 431
11 6.460 46
12 6.477 477
(...)

为此,我使用 gsub(".*\\.", "", data.frame[,1]) 但这会忽略零,如您所见,例如在第 11 行。 如何提取“。”之后的完整数字/所有数字? 该列是数字。

最佳答案

如果这是数字,那么我们可能需要使用formatsprintf将其转换为character,然后使用sub

sub("^[^.]*[.]", "", format(v1, width = max(nchar(v1))))
#[1] "354" "355" "460" "400" "012"

数据

v1 <- c(6.354, 6.355, 6.460, 6.400, 6.012)

关于r - 强制 gsub 保留尾随零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47593344/

相关文章:

正则表达式提取美国邮政编码但不提取伪代码

r - 叠加密度图不包括直方图值

python - 如何使用 python 正则表达式替换使用捕获的组?

regex - 从 HTML 中的多行中提取 InnerHTML

java - 模式匹配的烦恼

删除行尾和新空格之间的数字

r - 扩展 gsub 和 grepl 以忽略给定分隔符之间的子字符串

r - 在 geom_boxplot (ggplot2) 中找到框的 x 坐标

r - 是否有与 plyr::join_all 等效的 dplyr 或 data.table?通过数据框列表加入?

html - 一类 awk html 标签用 gsub 替换 "' ' >"with "''> "