1

我在 R 中离散化以下向量:

# Generated vector
my_vector <- round(c(seq(from=0, to=50, by=0.83)), 2)

# Generate 9 random indexes
random_indexes <- sample(0:50, 9)

# Assign NA to these indexes
my_vector[random_indexes] <- NA

我想将此向量离散化为具有名称的范围类,A,B,C,D,E并将 NAs 值插入另一个名为“NA values”的类中。然后我想把它转换成一个因子。我遵循的过程是下一个:

# Brakpoints definition
breakpoints <- c(5, 10, 20, 30, 40, 50)

# Labels definition
classes <- c("A", "B", "C", "D", "E")

# Generate the factor with the cut function
cut(my_vector, breaks=breakpoints, labels=classes)

这会产生以下因素:

[1] <NA> <NA> <NA> <NA> <NA> <NA> <NA> A    A    <NA> A    <NA> A    <NA> B    B    B   
[18] <NA> <NA> B    B    B    B    B    B    C    C    C    C    C    C    C    C    C   
[35] C    C    C    D    D    D    D    D    <NA> <NA> <NA> D    D    D    D    E    E   
[52] E    E    E    E    E    E    E    E    E    E   
Levels: A B C D E

我怎样才能得到以下(具有 NAVal 级别和 NAVal 值)?

[1] NAVal NAVal NAVal NAVal NAVal NAVal NAVal A    A    NAVal A    NAVal A    NAVal B    B    B   
[18] NAVal NAVal B    B    B    B    B    B    C    C    C    C    C    C    C    C    C   
[35] C    C    C    D    D    D    D    D    NAVal NAVal NAVal D    D    D    D    E    E   
[52] E    E    E    E    E    E    E    E    E    E   
Levels: A B C D E NAVal
4

0 回答 0