PDA

View Full Version : Cargar datos en Weka



pic3
08-28-2010, 02:19 PM
Hola a todos.
Como podéis ver por mi pregunta, soy nuevo en Weka v3-6-3.

Realmente son dos problemas los que tengo:

1. Genero un archivo arff desde PDI 4.0.1, con ARFF Output, con origen en una tabla de la BD. Me genera el archivo arff pero los campos con decimales los pone con ',' y luego al cargar en Weka se arma un lío. Ya sé que el separador decimal tiene que ser '.' pero no sé como decírselo.

2. También he tratado de hacer en Weka-Explorer la carga de datos directamente desde la BD, mysql, pero me dice:
'connecting to:jdbc:mysql://127.0.0.1:3306/mysql = false'
'exception: java.sql.SQLException: No suitable driver found for jdbc:mysql://127.0.0.1:3306/mysql'

Está claro que es un problema con el driver de la BD pero no encuentro documentación de dónde situarlo y cómo decírselo a Weka.

Os agradezco de antemano las respuestas.

pic3
08-31-2010, 01:08 PM
Ya tengo arreglado el punto 2... casi...

Efectivamente, he copiado al directorio Weka-3-6 un nuevo driver de mysql, el 5.1.13, he copiado también el archivo DatabaseUtils.props partiendo del DatabaseUtils.props.mysql, y he tenido que añadir a la variable de entorno Classpath el directorio c:\Program Files\Weka-3-6\mysql-connector-java-5.1.13-bin.jar.
El resultado es que weka se conecta a la base de datos, la select que utilizo extrae los datos, pero al cerrar la ventana para comenzar con Explorer me dice:
'Couldn't read from database:'
'Unknown data type:INT. Add entry in weka/experiment/DatabaseUtils.props.'

¿He de modificar también el archivo del directorio experiment?

pic3
08-31-2010, 03:34 PM
Resuelto el punto 2:

He incluido en DatabaseUtils.props todos los tipos de datos.

Los he sacado de http://forums.pentaho.com/showthread.php?73379-Converting-Timestamp-in-JDBC&highlight=decimal

¿Alguien puede decirme algo del punto 1?

pic3
09-13-2010, 02:09 PM
Ya he resuelto el punto 1:

En PDI, entre la lectura de la tabla y el archivo arff he incluido un paso 'selecciona/renombra valores'. En él, en la pestaña de Meta-información en la columna decimal, en los campos que tienen decimales he puesto el valor '.'.

Gracias a todos por las numerosas respuestas recibidas.