Tengo un código de matlab que requiere datos de series de tiempo que se distribuyen uniformemente a tiempo para producir una respuesta. El código del controlador matlab que lee el archivo de datos también ejecuta interp1 (x, y, xi, 'cubic') en los datos después de leer el archivo porque los datos no se distribuyen uniformemente en el tiempo.En Java, ¿existe una implementación para la interpolación de datos de series temporales distribuidas de manera no uniforme?
Ahora tengo que llevar este proceso a Java para agregarlo a algún proceso de producción. La versión de matlab no es anemiable para una gran cantidad de archivos de datos y no se puede usar en producción.
Mi pregunta real es ¿dónde puedo encontrar una biblioteca Java que ya implemente el método 'cúbico' interp1 para usar cuando se leen los datos en el proceso?
Según los documentos de MATLAB, 'cubic' es lo mismo que piecewise cubic hermite interpolating polynomial (pchip) interpolation. 'spline' produce resultados inaceptables. Ya he visto Apache commons-math y JAMA.
Suena como un buen ejercicio de java :-) – aioobe
Estoy de acuerdo, excepto que el objetivo no es una experiencia de aprendizaje para mí. Lo implementaré si es necesario, pero preferiría usar una biblioteca si es posible. –
Esto sería muy útil si tuviera que codificar mi propia solución para un problema relacionado: http://stackoverflow.com/questions/2675929/is-there-a-java-data-structure-that-is-effectively-an -raileylist-with-double-indic Con la respuesta a esta pregunta, puedo agregar una interfaz tipo ArrayList en la parte superior y duplicar la funcionalidad existente con (con suerte) mejor rendimiento y precisión. –