我正在使用R进行作业,我在下面有下面的代码。向量B基本上是从向量a中的字符串中去除空白。然后,向量c将使用空格分割B中的字符串。然后,我要为c列表排序。但我必须将其转换为其他类型的简单原子向量。但是当我执行此操作时,出现下面的错误。R对错误的帮助
a <- c("Chpater 5 ", "Green Eggs and Ham", "Dr. Seuss ", "That Sam-I-am! ", "p. 25")
a
b<-str_trim (a, side = "both")
b
library (stringr)
c<-str_split (b, pattern = " ")
c
sort (c)
unlist (str_split (c, pattern = " "))
这是我从上面的代码得到的结果。
[1] "c(\"Chpater\"," "\"5\")" "c(\"Green\"," "\"Eggs\","
[5] "\"and\"," "\"Ham\")" "c(\"Dr.\"," "\"Seuss\")"
[9] "c(\"That\"," "\"Sam-I-am!\")" "c(\"p.\"," "\"25\")
sort (c)
但是,我没有得到变量c的排序,当我将c转换为简单的原子向量。下面是我得到的消息,当我跑这条线
> unlist (str_split (c, pattern = " "))
Error in stri_split_regex(string, pattern, n = n, simplify = simplify, :
argument `str` should be a character vector (or an object coercible to)
> sort (c)
Error in sort.int(x, na.last = na.last, decreasing = decreasing, ...) :
'x' must be atomic
这是因为变量'C'在'str_split()'是大写,而不是更低? – neilfws
'c'和'C'不是同一个变量。尝试使用更多的描述性变量名称来提高清晰度,并且您将能够看到问题。 – mikeck
我让c成为小写,但我仍然得到相同的错误。我添加了更多信息。 – cookiemonster