示例
值
15
15
15
4
37
37
37
有3个不同的值,但有7行,下面是我想要的。由于我想匿名化我的数据。我不断收到错误消息:“替换有3行,数据有7行”
这是我正在使用的代码
final_df$Value <- paste("Value",seq(1:length(unique(final_df$Value))))
值
Value 1
Value 1
Value 1
Value 2
Value 3
Value 3
Value 3
答案 0 :(得分:0)
创建执行此功能的函数:
anon <- function(x) {
rl <- rle(x)$lengths
ans<- paste("Value", rep(seq_along(rl), rl))
return(ans)
}
调用功能:
anon(final_df$Value)
结果:
# [1] "Value 1" "Value 1" "Value 1" "Value 2" "Value 3" "Value 3" "Value 3"
概括:
df1 <- mtcars
df1[] <- lapply(df1, anon)
names(df1) <- paste0("V", seq_along(names(df1)))
rownames(df1) <- NULL
df1