R 如何使一个向量对另一个向量进行分类

R 如何使一个向量对另一个向量进行分类,r,R,假设我有一个数值整数数据的向量A,我想得到一个相同长度的新向量B,这样在相应的位置,如果向量A中的数据是负数,那么向量B中的数据是“A”,如果它是0,那么它是“B”,而“c”代表正数? 例如: 有没有灵巧的方法呢?非常原始: letters[sign(v1) + 2] # [1] "c" "a" "a" "b" 通常,ifelse适用于以下情况: ifelse(v1 < 0, 'a', ifelse(v1 == 0, 'b', 'c')) 到目前为止,您尝试了什么?我考虑过使用for循

假设我有一个数值整数数据的向量A,我想得到一个相同长度的新向量B,这样在相应的位置,如果向量A中的数据是负数,那么向量B中的数据是“A”,如果它是0,那么它是“B”,而“c”代表正数? 例如:

有没有灵巧的方法呢?

非常原始:

letters[sign(v1) + 2]
# [1] "c" "a" "a" "b"

通常,
ifelse
适用于以下情况:

ifelse(v1 < 0, 'a', ifelse(v1 == 0, 'b', 'c'))

到目前为止,您尝试了什么?我考虑过使用for循环,但我对R还很陌生,所以它看起来很长,很浪费……非常原始:
字母[1:3][sign(v1)+2]
letters[sign(v1) + 2]
# [1] "c" "a" "a" "b"
ifelse(v1 < 0, 'a', ifelse(v1 == 0, 'b', 'c'))
cut(v1, breaks = c(-Inf, -.5, .5, Inf), labels = c('a', 'b', 'c'))