如何用R读取.arff文件?

时间:2011-09-25 20:01:09

标签: r arff

有没有办法做到这一点?

是的,我是R的新手。

5 个答案:

答案 0 :(得分:34)

read.arff中的

foreign从Weka属性 - 关系文件格式(ARFF)文件中读取数据。

更新:CRAN上有一个新包:

farff:更快的“ARFF”文件阅读器和编写器

答案 1 :(得分:22)

一般来说,可以通过sos包找到这样的问题的答案,该包访问CRAN上所有包的全文搜索。

install.packages("sos")
library("sos")
findFn("arff")

foreign(如上所述)和RWeka包中查找函数。由于foreign是推荐的软件包,因此默认情况下它将安装在您的系统上。因此,你会找到答案

help.search("arff")

首先,不安装sos包。当您搜索的字符串不在元数据(标题,关键字,别名等)中时,sos仍然值得拥有,这是help.search搜索的所有内容,或者不是您已经安装在系统上的软件包(同上)。 (查看系统附带的R Data Import/Export Manual通常很有用,但找到了这个问题的答案...)

了解RWeka版本可能有用,因为foreign中的版本(您应首先尝试)因某种原因失败。

答案 2 :(得分:9)

即使这个问题已经得到解答,我也意识到还有另一个值得注意的解决方案。查看允许您读取和写入RWeka文件的arff包。另外,它为您提供了Weka函数的包装器。因此,您可以在不安装Weka本身的情况下使用Weka功能(尽管它安装了.jars)。另请参阅此doku - > read.arff

答案 3 :(得分:4)

如果你只关心数据而不关心关系,你可以使用:

read.csv("data.arff", header=FALSE, comment.char = "@")

答案 4 :(得分:3)

最简单的方法是使用"RWeka"库,其read.arff()函数读取.arff个文件。

library(RWeka)
test=read.arff("../Test/test.arff")

希望这有帮助。