在 R 中提取字符串中的最后一个单词 - 面临错误

Extract last word in string in R - error faced

首先,我希望将 Description 列的最后一个词和第一个词(该列至少包含 3 个词)提取到新创建的列 firstwordlastword .但是,word() 函数并未应用于所有行。因此,有许多行 lastword 为空,尽管这些行实际上有一个最后的词(正如您从 Description 列中看到的那样)。这显示在前两行代码中。

其次,如果lastword为空,我也在尝试获取第三行代码以将lastword替换为firstword。但是它不起作用。

有办法纠正这个问题吗?

c1$lastword = word(c1$Description,start=-1) #extract last word
c1$firstword = word(c1$Description,start=1) #extract first word
c1$lastword=ifelse(c1$lastword == " ", c1$firstword, c1$lastword)

我发现 Description 变量的某些行的开头有白色 space,在 R 中查看时没有显示。

使用 stri_trim() 删除白色 space 解决了问题。

c1$Description = stri_trim(c1$Description, "left") #去掉白色space