我有下面的向量
vector <- c(31, 41, 51, 61, 32, 42, 52, 62, 33, 43, 53, 63,
34, 44, 54, 64, 35, 45, 55, 65, 36, 46, 56, 66)
字符串
我想只替换前导数字,而不转换该数字时,它被发现为单位数字
str_replace_all(vector, c('3' = 'Air', '4' = 'Car',
'5' = 'Polluted', '6' = 'Gas'))
型
所需的输出仅是使用每个最后/单位数字作为标记,表示例如:
如果有3(unit/digit)
,代码应将其转换为:
'Air_(unit/digit)'
型
更清楚地说:
# [1] "Air_1" "Car_1" "Polluted_1"
# [4] "Gas_1" "Air_2" "Car_2"
# [7] "Polluted_2" "Gas_2" "Air_3"
# [10] "Car_3" "Polluted_3" "Gas_3"
# [13] "Air_4" "Car_4" "Polluted_4"
# [16] "Gas_4" "Air_5" "Car_5"
# [19] "Polluted_5" "Gas_5" "Air_6"
# [22] "Car_6" "Polluted_6" "Gas_6"
型
你能给我个快速的解决办法吗?谢啦,谢啦
5条答案
按热度按时间34gzjxbg1#
这里有另一个解决方案:
字符串
gopyfrb32#
假设我们总是有2个数字,使用算术运算符
%%
得到第一位,%/%
得到余数-第二位。然后根据需要粘贴所有内容:字符串
vwhgwdsa3#
您可能正在寻找更好的解决方案,但这是您正在寻找的吗?
字符串
创建于2023-07-17带有reprex v2.0.2
这里假设总是有两个数字,第一个代表类别,第二个代表某种值。
e5nszbig4#
使用
stringr
,您可以在str_replace()
中提供一个函数来替换第一个数字的匹配项。字符串
v64noz0r5#
paste0
这样做字符串