我使用的是一个带有年龄组变量的数据集。我试图在条形图上可视化不同年龄组的总购买价值,但同一年龄组有两个条形图。我检查了是否有重复的年龄组,其中唯一的()函数,它告诉我,有两个“独特的”18-24年龄组.我想这是在一个单一的酒吧,但它显示了我两个.有人能告诉我什么'怎么回事?x1c 0d1x
relj7zay1#
所有的字符在计算机中都用数字表示。存在不同的编码系统。重复的类别并不是真正的重复,因为它们包含不同的破折号字符。它们可能看起来与人眼相似,含义相同,但对计算机来说,它们就像“a”和“b”一样不同。您可以转换您的age变量,以便使用一个regex来统一组,该regex标识所有可能的破折号字符并将它们替换为公共破折号。(我假设年龄组存储在data data.frame的age列中。
age
data
data <- data.frame( age = c( "18-24", "18–24", "18-24", "25-34" ) ) unique(data$age) # [1] "18-24" "18–24" "25-34" # Using base-r: data$age <- sub("\\p{Pd}", "-", data$age, perl = TRUE) unique(data$age) # [1] "18-24" "25-34" # Using `stringr`: library(stringr) data$age <- str_replace(data$age, "\\p{Pd}", "-") unique(data$age) # [1] "18-24" "25-34"
1条答案
按热度按时间relj7zay1#
所有的字符在计算机中都用数字表示。存在不同的编码系统。
重复的类别并不是真正的重复,因为它们包含不同的破折号字符。它们可能看起来与人眼相似,含义相同,但对计算机来说,它们就像“a”和“b”一样不同。
您可以转换您的
age
变量,以便使用一个regex来统一组,该regex标识所有可能的破折号字符并将它们替换为公共破折号。(我假设年龄组存储在
data
data.frame的age
列中。