R 查找术语文档矩阵中所有术语之间的关联-巨大
我需要在术语文档矩阵中找到每个术语之间的相关性。矩阵中的术语数量为181841,文档数量为191431。 我需要得到每一项与另一项的相关系数 我使用了for循环和下面的代码来获得每个术语的for循环。然后使用rbind,我把它变成了一个数据帧 编辑1:下面是一个可复制的小示例R 查找术语文档矩阵中所有术语之间的关联-巨大,r,qdap,R,Qdap,我需要在术语文档矩阵中找到每个术语之间的相关性。矩阵中的术语数量为181841,文档数量为191431。 我需要得到每一项与另一项的相关系数 我使用了for循环和下面的代码来获得每个术语的for循环。然后使用rbind,我把它变成了一个数据帧 编辑1:下面是一个可复制的小示例 clean_CTP TP_ID Keywords 1 A,B,C,D 2 A,L,K,M 3 P,B,L,M library(qdap) text_corpu
clean_CTP
TP_ID Keywords
1 A,B,C,D
2 A,L,K,M
3 P,B,L,M
library(qdap)
text_corpus <- Corpus(VectorSource(clean_CTP[,2]))
doc_term_mat <- TermDocumentMatrix(text_corpus)
selected_words <- findFreqTerms(doc_term_mat, lowfreq = 1)
filt_doc_term_mat= doc_term_mat[selected_words,]
df_pear = data.frame(main_term= character(),
rel_term = character(),
corr = numeric())
for(i in 1:length(selected_words)){
term_con = selected_words[i]
ass = findAssocs( filt_doc_term_mat, term_con,pearson_thres)
ass_df = as.data.frame(ass)
main_term = rep(selected_words[i],nrow(ass_df))
rel_term = as.vector(rownames(ass_df))
corr = as.vector(ass_df[,1])
df_new = data.frame(main_term,rel_term,corr)
df_pear = rbind(df_pear,df_new)
}
clean\u CTP
TP_ID关键字
1 A、B、C、D
2 A,L,K,M
三个P,B,L,M
图书馆(qdap)
文本语料库显示您正在使用的代码。优选地,制作一个小的可重复的示例。也许这可以并行完成。@RomanLuštrik编辑了这个问题。.谢谢,您可以通过让我们更容易了解预期结果来进一步改进您的问题。仅出现在一两个文档中的术语不会有任何有意义的关联。忽略该要求,通过增加最低文档要求(比如至少5个文档),将您正在分析的术语减少到更有意义的内容。这将提高速度并关注有意义的结果。问题中提到的数字是后过滤。这样就完成了。但执行的时间仍然很长。显示您正在使用的代码。优选地,制作一个小的可重复的示例。也许这可以并行完成。@RomanLuštrik编辑了这个问题。.谢谢,您可以通过让我们更容易了解预期结果来进一步改进您的问题。仅出现在一两个文档中的术语不会有任何有意义的关联。忽略该要求,通过增加最低文档要求(比如至少5个文档),将您正在分析的术语减少到更有意义的内容。这将提高速度并关注有意义的结果。问题中提到的数字是后过滤。这样就完成了。但执行的时间仍然很长。