R 关于错误的帮助
我正在用R写作业,下面是我的代码。向量B基本上是从向量a中的字符串中删除空格。然后,向量c将使用空格拆分B中的字符串。然后我想对列表进行c排序。但我必须把它转换成简单的原子向量,以进行排序。但当我这样做的时候,我得到了一个错误,如下所述R 关于错误的帮助,r,R,我正在用R写作业,下面是我的代码。向量B基本上是从向量a中的字符串中删除空格。然后,向量c将使用空格拆分B中的字符串。然后我想对列表进行c排序。但我必须把它转换成简单的原子向量,以进行排序。但当我这样做的时候,我得到了一个错误,如下所述 a <- c("Chpater 5 ", "Green Eggs and Ham", "Dr. Seuss ", "That Sam-I-am! ", "p. 25") a b<-str_trim (a, side = "both") b libr
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 = " "))
然而,当我把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
这是因为
str_split()
中的变量C
是大写,而不是小写?C
和C
不是同一个变量。尝试使用更具描述性的变量名来提高清晰度,您将能够看到问题所在。我将c改为小写,但仍然会出现相同的错误。我添加了更多的信息。还要注意的是(尽管R现在可以抵抗这些重复的含义)c
也是一个内部函数!这是因为str_split()
中的变量C
是大写,而不是小写?C
和C
不是同一个变量。尝试使用更具描述性的变量名来提高清晰度,您将能够看到问题所在。我将c改为小写,但仍然会出现相同的错误。我添加了更多的信息。还要注意的是(尽管R现在可以抵抗这些重复的含义)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
## You need to unlist vector c and sort as below:
sort(unlist(c))
#[1] "25" "5" "and" "Chpater" "Dr." "Eggs"
#[7] "Green" "Ham" "p." "Sam-I-am!" "Seuss" "That"