我想提取“。”之后的数字。从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行中
如何提取“。”之后的完整数字/所有数字?
该列为数字。

最佳答案

如果这是数字,那么我们可能需要使用characterformat将其转换为sprintf,然后使用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)

09-29 20:02