【发布时间】:2012-01-31 14:35:36
【问题描述】:
我有由ARFF 格式生成的非常稀疏的高维(40k 观察,20k 维)文本数据 WEKA。
在 R 中通过 RWeka 和 foreign 包提供了 2 个 ARFF 阅读器。这两个 arff 阅读器的问题是它们将 arff 数据读入数据帧(因此您从稀疏数据转到非稀疏存储方式),并且由于我的数据集相当大,如果这些都不是实用的方法。事实上,当 RWeka 尝试读取 arff 文件时,我开始耗尽内存。
所以问题是:
(1) 在 R 下存储和处理我的数据的合适方法是什么?请注意,我正在阅读带标签的文本数据,因为我想做文本分类。因此,任何稀疏表示都应该(理想情况下)可以被分类器使用。
(2) 更重要的是,我如何以该格式读取我的 arff 文件(如问题 1 所示)?
提前致谢。
--编辑--
根据其中一个 cmets 的要求提取我的 ARFF 文件:
@relation train.arff-weka.filters.unsupervised.attribute.StringToWordVector-R1-W100000-prune-rate-1.0-I-N1-L-stemmerweka.core.stemmers.LovinsStemmer-M1-tokenizerweka.core.tokenizers.AlphabeticTokenizer
@attribute myclasses {alpha, beta, gamma, delta}
@attribute aardvark numeric
@attribute abbrevi numeric
@attribute abduc numeric
@data
{102 7.686363,166 6.302574,791 9.204264,1854 1.370962,2830 5.907602}
{1727 14.842519}
{103 0.774816,289 2.874456,413 3.729545,517 4.723478,1286 1.417374,1531 3.23805,1637 4.534334,1708 3.544581,1854 0.961008,1878 3.731564,2105 7.701038,2209 4.83372,2466 5.663894}
{1 1.368628,103 0.582774,225 5.61684,954 5.792294,1082 5.194097,1160 5.792294,1799 4.367975,1854 0.722817,2220 4.114164,2304 2.967602,2456 3.186834,2564 0.701145,2839 6.039582}
【问题讨论】:
-
@Itamar:我的问题更多是关于如何将稀疏数据读入 R。
-
请发布您遇到的 ARFF 数据的摘录。我可以解决(1),但如果我确定我没有犯错,回答(2)会更容易。基本上,能够重现问题对于得出一个好的答案非常有帮助。
-
@Iterator:我发布了我的 ARFF 的一小部分摘录。如果需要,我可以使整个(大)arff 文件可用。
标签: r data-mining classification text-mining