将 CSV 格式的术语文档矩阵导入 R
Importing a Term Document Matrix in CSV format into R
所以我已经有一个 TDM,但它在 excel 上。所以我将其保存为 CSV。现在我想做一些分析,但我不能使用 tm 包将它加载为 TDM。我的 CSV 看起来像这样:
item01 item02 item03 item04
red 0 1 1 0
circle 1 0 0 1
fame 1 0 0 0
yellow 0 0 1 1
square 1 0 1 0
所以我无法将该文件作为 TDM 加载,到目前为止我尝试过的最好的是:
myDTM <- as.DocumentTermMatrix(df, weighting = weightBin)
但它在所有单元格上加载 1
<<DocumentTermMatrix (documents: 2529, terms: 1952)>>
Non-/sparse entries: 4936608/0
Sparsity : 0%
Maximal term length: 27
Weighting : binary (bin)
Sample :
Terms
Docs item01 item02 item03 item04
Red 1 1 1 1
Circle 1 1 1 1
fame 1 1 1 1
我试过首先转换为语料库和其他东西,但如果我尝试使用任何函数,如 inspect(tdm),它 returns 一个错误,像这样或类似的。
Error in `[.simple_triplet_matrix`(x, docs, terms) :
我真的不相信没有办法以正确的格式导入它,有什么建议吗?提前致谢。
首先尝试将 CSV 转换为稀疏矩阵。我的CSV和你的不一样,因为是我自己打的,但是思路是一样的。
> library(tm)
> library(Matrix)
> myDF <- read.csv("my.csv",row.names=1,colClasses=c('character',rep('integer',4)))
> mySM <- Matrix(as.matrix(myDF),sparse=TRUE)
> myDTM <- as.DocumentTermMatrix(mySM,weighting = weightBin)
> inspect(myDTM)
<<DocumentTermMatrix (documents: 5, terms: 4)>>
Non-/sparse entries: 7/13
Sparsity : 65%
Maximal term length: 6
Weighting : binary (bin)
Sample :
Terms
Docs item01 item02 item03 item04
circle 1 1 0 0
fame 1 0 0 0
red 0 0 0 0
square 1 0 1 0
yellow 0 0 1 1
>
所以我已经有一个 TDM,但它在 excel 上。所以我将其保存为 CSV。现在我想做一些分析,但我不能使用 tm 包将它加载为 TDM。我的 CSV 看起来像这样:
item01 item02 item03 item04
red 0 1 1 0
circle 1 0 0 1
fame 1 0 0 0
yellow 0 0 1 1
square 1 0 1 0
所以我无法将该文件作为 TDM 加载,到目前为止我尝试过的最好的是:
myDTM <- as.DocumentTermMatrix(df, weighting = weightBin)
但它在所有单元格上加载 1
<<DocumentTermMatrix (documents: 2529, terms: 1952)>>
Non-/sparse entries: 4936608/0
Sparsity : 0%
Maximal term length: 27
Weighting : binary (bin)
Sample :
Terms
Docs item01 item02 item03 item04
Red 1 1 1 1
Circle 1 1 1 1
fame 1 1 1 1
我试过首先转换为语料库和其他东西,但如果我尝试使用任何函数,如 inspect(tdm),它 returns 一个错误,像这样或类似的。
Error in `[.simple_triplet_matrix`(x, docs, terms) :
我真的不相信没有办法以正确的格式导入它,有什么建议吗?提前致谢。
首先尝试将 CSV 转换为稀疏矩阵。我的CSV和你的不一样,因为是我自己打的,但是思路是一样的。
> library(tm)
> library(Matrix)
> myDF <- read.csv("my.csv",row.names=1,colClasses=c('character',rep('integer',4)))
> mySM <- Matrix(as.matrix(myDF),sparse=TRUE)
> myDTM <- as.DocumentTermMatrix(mySM,weighting = weightBin)
> inspect(myDTM)
<<DocumentTermMatrix (documents: 5, terms: 4)>>
Non-/sparse entries: 7/13
Sparsity : 65%
Maximal term length: 6
Weighting : binary (bin)
Sample :
Terms
Docs item01 item02 item03 item04
circle 1 1 0 0
fame 1 0 0 0
red 0 0 0 0
square 1 0 1 0
yellow 0 0 1 1
>