r将布尔矢量转换为字符串

时间:2017-11-18 20:50:42

标签: r string boolean

我想将我的矢量y $ boolean转换为表示情绪的字符串(0到"负"以及1到"肯定")

我想有一种方法可以使用Regex语句,但不确定如何应用它

  

dput(head(y $ boolean,4))=   c(1L,0L,0L,1L)

  

y $ sentiment =   c("肯定","消极","消极","肯定")

1 个答案:

答案 0 :(得分:0)

您可以使用'因素'来解决问题

> vec <-  c(1L, 0L, 0L, 1L)
> fac <- factor(vec, labels = c('negative', 'positive') )
> fac
[1] positive negative negative positive
Levels: negative positive

请注意,您需要首先使用“否定”,因为R将对原始矢量进行排序,“0L”将是要分配的第一个元素。

例如,让我们将整数向量更改为字符向量:

> vec_l <- c("b" , "a", "a", "b")
> fac_l <- factor(vec, labels = c("negative_a", "positive_b"))
> fac_l
[1] positive_b negative_a negative_a positive_b
Levels: negative_a positive_b

现在R按字母顺序排序原始矢量。 首先是“a”,所以你首先在标签参数上用“negative_a”标记“a”。