我如何 return R中字符串中的唯一位数?
How can I return the unique number of digits in a character string in R?
我有一个字符串向量,每个字符串有 24 位数字。每个数字代表一个小时,如果数字为“0”,则适用第 0 期的费率;如果数字为 1,则适用第 1 期的费率。
例如,请考虑以下两个字符串。我想 return 每个字符串中的句点数。例如:
str1 <- "000000000000001122221100"
str2 <- "000000000000000000000000"
#str1: 3
#str2: 1
有什么建议吗?我一直在考虑如何在这里使用 stringr 中的 str_count 。此外,我搜索了其他帖子,但大多数帖子都专注于计算字符串中的字母,而这是一个轻微的修改,因为字符串包含数字而不是字母。
谢谢!
这是一个丑陋的解决方案,但这里是
length(unique(unlist(strsplit(str1,split = ""))))
这是使用 charToRaw
的另一种选择。
length(unique(charToRaw(str1)))
[1] 3
length(unique(charToRaw(str2)))
[1] 1
我有一个字符串向量,每个字符串有 24 位数字。每个数字代表一个小时,如果数字为“0”,则适用第 0 期的费率;如果数字为 1,则适用第 1 期的费率。
例如,请考虑以下两个字符串。我想 return 每个字符串中的句点数。例如:
str1 <- "000000000000001122221100"
str2 <- "000000000000000000000000"
#str1: 3
#str2: 1
有什么建议吗?我一直在考虑如何在这里使用 stringr 中的 str_count 。此外,我搜索了其他帖子,但大多数帖子都专注于计算字符串中的字母,而这是一个轻微的修改,因为字符串包含数字而不是字母。
谢谢!
这是一个丑陋的解决方案,但这里是
length(unique(unlist(strsplit(str1,split = ""))))
这是使用 charToRaw
的另一种选择。
length(unique(charToRaw(str1)))
[1] 3
length(unique(charToRaw(str2)))
[1] 1