0

我有以下向量:

x = c(31, 56, 78, 98, 76, 88, 90)

并希望选择以相同数字结尾的所有值。例如,78、88、98。

4

3 回答 3

8

你可以使用这个:

v <- c(31,56,78,98,76,88,90)
v[v %% 10 == 8]
# [1] 78 98 88

请注意,这将为您提供除以 10v %% 10的 mod 。v

于 2013-04-19T08:33:36.823 回答
5

使用正则表达式,

x[grepl('.*8$',x)]
[1] 78 98 88
于 2013-04-19T08:46:02.090 回答
2

这是另一个冗长的解决方案。

mmm <- c(31,56,78,98,76,88,90)
mmm[sapply(sapply(as.character(mmm), strsplit, split = ""), "[[", 2) == 8]
[1] 78 98 88
于 2013-04-19T08:37:17.373 回答