从数据库加载

许多数据库可以在 Weka 中使用。首先,必须编辑 DatabaseUtils.props 文件以匹配你的数据库; 具体而言,你必须提供数据库的名称,位置,端口和正确的驱动程序。

jdbcDriver=org.gjt.mm.mysql.Driver
jdbcURL=jdbc:mysql://localhost:3306/my_database

然后可以使用一些简单的代码加载数据库。

import weka.core.Instances;
import weka.experiment.InstanceQuery;
...
InstanceQuery query = new InstanceQuery();
query.setUsername("user");
query.setPassword("pass");
query.setQuery("select * from mytable");
Instances data = query.retrieveInstances();

关于从数据库加载的一些注意事项:

  • 确保类路径中包含正确的 JDBC 驱动程序。
  • 如果你使用的是 Microsoft Access,则可以使用 JDK 附带的 JDBC-ODBC 驱动程序。
  • InstanceQuery 方法将 VARCHAR 转换为标称属性,将 TEXT 转换为字符串属性。过滤器(如 NominalToStringStringToNormal)可以将属性转换回正确的类型。