【问题标题】:Replacing all semicolons with a space pt2用空格 pt2 替换所有分号
【发布时间】:2020-01-02 22:05:08
【问题描述】:

我正在尝试对包含 2000 多行关键字的列表进行文本分析,但它们的列出方式类似于

“战略;管理风格;组织”

所以当我使用 tm 删除标点符号时,它变成了

“策略管理样式组织”

我认为这会在某种程度上破坏我的常用术语分析。

我试过用

vector<-gsub(';', " ",vector)

但这需要我的矢量数据“2000 年列表”并使其成为一个值,当我检查这个值时,它的描述为“大字符(3 个元素)”,它给了我一个非常长的单词和内容列表装载!任何想法我做错了什么?

我应该在我的向量上还是在我的语料库上使用 gsub?他们只是

vector<-VectorSource(dataset$Keywords)
corpus<-VCorpus(vector)

我尝试过使用

inspect(corpus[[1]])

在我的语料库中使用 gsub 使其成为一个值后,但我收到错误“没有适用于 'inspect' 的方法应用于类“字符”的对象”

【问题讨论】:

  • 你想要一个字符串向量列表吗?
  • 我想要一个向量把它做成语料库,然后用它来预测哪些关键词属于哪个研究领域(比如数学)
  • typeof(vector) 和 typeof(vector[[1]]) 的输出是什么
  • [1] 两个输入的“字符”
  • stringr::str_split(vector, ";") 将其作为字符串列表返回,或者 unlist(stringr::str_split(vector, ";")) 将其作为向量返回。

标签: r


【解决方案1】:

您需要将数据拆分为字符串向量,其中一种方法是使用 stringr 包,如下所示;

library(tm)
library(stringr)

vector <- c("Strategy;Management Styles;Organizations")
keywords <- unlist(stringr::str_split(vector, ";"))

vector <- VectorSource(keywords)
corpus <- VCorpus(vector)
inspect(corpus[[1]])

#<<PlainTextDocument>>
#  Metadata:  7
#Content:  chars: 8

#Strategy

【讨论】:

    【解决方案2】:

    也许你可以试试strsplit

    X <- c("Global Mindset;Management","Auditor;Accounting;Selection Process","segmantation;banks;franchising")
    res <- Map(function(v) unlist(strsplit(v,";")),X)
    

    这样

    > res
    $`Global Mindset;Management`
    [1] "Global Mindset" "Management"    
    
    $`Auditor;Accounting;Selection Process`
    [1] "Auditor"           "Accounting"        "Selection Process"
    
    $`segmantation;banks;franchising`
    [1] "segmantation" "banks"        "franchising" 
    

    【讨论】:

    • 这给了我以下错误:“strsplit(ncorpus, ";") 中的错误:非字符参数”我试图 strsplit 我的 ncorpus,即 2665 个元素
    • @Gnubbish 你能不能dput() 部分源数据,否则很难跟踪错误
    • 尝试 dput 我的前 10 行给了我这个错误“dput(texts, 10) 中的错误:'file' 必须是字符串或连接”
    • @Gnubbish 尝试 dput(head(texts,10)) 如果您的 texts 是数据框
    • 我把它变成了一个数据框,我应该把 dput 放在哪里?我怎么把它贴在这里
    猜你喜欢
    • 1970-01-01
    • 2018-04-15
    • 1970-01-01
    • 2020-05-08
    • 2012-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    相关资源
    最近更新 更多