- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
首先,我要说的是,我对机器学习、kmeans 和 r 相当陌生,这个项目是一种了解更多相关知识的方法,也是向我们的 CIO 展示这些数据的方法,以便我可以在开发新的帮助台系统。
我有一个 60K 行的文本文件。该文件包含教师在 3 年内输入的帮助台票证的标题。
我想创建一个 r 程序来获取这些标题并创建一组类别。例如,与打印问题相关的术语,或与投影仪灯泡相关的一组术语。我使用 r 打开文本文档,清理数据,删除停用词和其他我认为不必要的词。我已经获得了频率 >= 400 的所有术语的列表,并将其保存到文本文件中。
但现在我想将 kmeans 聚类应用(如果可以完成或合适)到同一数据集,看看是否可以提出类别。
下面的代码包含将写出使用的术语列表 >= 400 的代码。它位于末尾,并被注释掉。
library(tm) #load text mining library
library(SnowballC)
options(max.print=5.5E5)
setwd('c:/temp/') #sets R's working directory to near where my files are
ae.corpus<-Corpus(DirSource("c:/temp/"),readerControl=list(reader=readPlain))
summary(ae.corpus) #check what went in
ae.corpus <- tm_map(ae.corpus, tolower)
ae.corpus <- tm_map(ae.corpus, removePunctuation)
ae.corpus <- tm_map(ae.corpus, removeNumbers)
ae.corpus <- tm_map(ae.corpus, stemDocument, language = "english")
myStopwords <- c(stopwords('english'), <a very long list of other words>)
ae.corpus <- tm_map(ae.corpus, removeWords, myStopwords)
ae.corpus <- tm_map(ae.corpus, PlainTextDocument)
ae.tdm <- DocumentTermMatrix(ae.corpus, control = list(minWordLength = 5))
dtm.weight <- weightTfIdf(ae.tdm)
m <- as.matrix(dtm.weight)
rownames(m) <- 1:nrow(m)
#euclidian
norm_eucl <- function(m) {
m/apply(m,1,function(x) sum(x^2)^.5)
}
m_norm <- norm_eucl(m)
results <- kmeans(m_norm,25)
#list clusters
clusters <- 1:25
for (i in clusters){
cat("Cluster ",i,":",findFreqTerms(dtm.weight[results$cluster==i],400,"\n\n"))
}
#inspect(ae.tdm)
#fft <- findFreqTerms(ae.tdm, lowfreq=400)
#write(fft, file = "dataTitles.txt",
# ncolumns = 1,
# append = FALSE, sep = " ")
#str(fft)
#inspect(fft)
当我使用 RStudio 运行它时,我得到:
> results <- kmeans(m_norm,25)
Error in sample.int(m, k) : cannot take a sample larger than the population when 'replace = FALSE'
我不太确定这意味着什么,而且我在网上也没有找到很多关于这方面的信息。有什么想法吗?
TIA
最佳答案
您正在读取具有多行的单个文件,而不是目录中的多个文件。而不是
ae.corpus<-Corpus(DirSource("c:/temp/"),readerControl=list(reader=readPlain))`
你需要使用
text <- readLines("c:\\temp\\your_file_name", n = -1)
ae.corpus<-Corpus(VectorSource(text),readerControl=list(reader=readPlain))
然后您将获得一个包含 60K 文件的语料库,而不是 1 个包含 60k 行的文件。
关于r - Sample.int(m, k) 中的错误 : cannot take a sample larger than the population,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25745215/
我正在编写我的 servlet 程序并使用 jconsole 和 jmap 来监视其内存状态。我发现当我的程序运行时,内存池“PS Old Gen”变得越来越大,最后我的 servlet 无法响应任何
我正在执行从 tfs.visualstudio 到内部部署 2012 服务器的 TFS 集成迁移。我遇到了一个包含多个超过 1 MB 的二进制文件的特定变更集的问题,其中一些是 15-16 MB。 [
考虑一个带有内置整型常量的 Rust 程序 const N: u64和运行时整数值 x: u64 。我想匹配x这样值 x N分别。我的第一次尝试如下所示: const N: u64 = 3; mat
我不确定为什么,但我在使用 OG Debugger 时不断收到此警告并且 Facebook 没有加载正确的错误。它告诉我图像不够大,但图像是 404x404px,所以我不确定它的预期是什么,因为它符合
我在 PostgreSQL 中有一个包含一个数字列的表,我有一个给定的数字 x . 如果x在表格中,我想要所有数字 >= x . 如果x不在表格里,我要所有的数字> x和最大的数字 12 UNION
我想为我的用户提供显示某些 的可能性字体大小大于系统默认值的元素。 documentation仅提供该样式的编号。 我想显示带有 web-css“大”或“更大”值的文本,或者可能是 的 140%。原
您好,新年快乐, 我正在开发内核模块。有必要对某些参数进行数值计算才能正确设置设备。该函数工作完美,但 gcc 编译器(我正在使用 kbuild)给了我警告: warning: the frame s
我正在解决一些关于图表的问题。它需要存储 N 个节点的权重(N。如果一个节点连接到几乎所有其他节点,这是不好的,如果连接到几个节点,则便宜 删除边对于大社区来说也是昂贵的(在最坏的线性时间内,一个
我正在尝试实现一个读取图像宽度和高度的脚本,如果图像高度大于 600,则将 html div 的高度设置为 600。如果高度小于 600,则 div 的高度将是图像的高度。 这是我一直在尝试的。 Ja
我想用 while 循环测量计算时间。 我正在使用 C99 版本进行编程。 我的代码如下: struct timeval startingTime,endingTime; gettimeofday(&
以下算法返回数组中前一个较大的元素。它来自 these 的第 11 页笔记。 // Input: An array of numeric values a[1..n] // Returns: An a
我需要将科学信息存储在数据库 (sql server) 中。在“小于”、“大于”是信息的一部分的数据库中存储值的最佳方式是什么。 例子: 患者编号:123变异率:<3% 患者编号:999突变率:3%
在 Excel 中,是否有一个 native 函数可以返回两个值中较大的一个?我希望避免使用 IF 函数。如果值得的话,我正在使用 Excel 2010 Beta。 例如: GTR(66,24) 将返
我正在开发一个项目,需要通过 RMI 网络显示一些加密解密。我为此使用 RSA 系统。解密时,我的代码出现以下错误: javax.crypto.BadPaddingException: Message
我已从 Visual Studio 多次部署到 Azure 网站,但从几周前开始我无法再进行部署。我一遍又一遍地收到此错误 Web deployment task failed. (Error des
假设我在 h1 元素中有一个标题(任何元素都可以)。它的内容是动态的(不知道标题的长度)。它应该显示在一行中。 h1 在一个大小有限的 DIV(我们称之为容器)中。 我怎么知道元素 (h1) 是否溢出
我在基于此 real-world example 的小型项目中使用 Redux/sagas 工作流,但这些逻辑并不那么复杂。我应该如何使用更全面的 API(即 Reddit 的 API)而不会使事情变
我收到以下错误 - 显然是在保存模型时 Step = 1799 | Tensorflow Accuracy = 1.0 Step = 1799 | My Accuracy = 0.036335
我已经安装了mysql服务器5.1。当我尝试插入一个大文件时,我的 MySQL 数据库中的 BLOB 字段出现问题。有人有什么建议吗? 提前非常感谢 最佳答案 如何解决此问题: 更改 max_allo
我有以下代码 Can you click me? 目标是我可以点击“你能点击我吗”框并转到 google 并在包含 div 的任何其他地方
我是一名优秀的程序员,十分优秀!