jasp-stats / jasp-issues

This repository is solely meant for reporting of bugs, feature requests and other issues in JASP.
58 stars 29 forks source link

[Bug]: JASP Fails on Forecast in ARIMA #2852

Open CASteinman opened 1 month ago

CASteinman commented 1 month ago

JASP Version

0.18.3

Commit ID

No response

JASP Module

Time Series

What analysis are you seeing the problem on?

ARIMA

What OS are you seeing the problem on?

Windows 11

Bug Description

Simple one variable Time Series. Run Arima Forecast and get this error repeatedly. This error was reported by someone else previously but the report was closed with no reported action or reason to close it.

Error in seq.POSIXt(lastT, by = increment, length.out = (options$forecastLength + : 'from' must be a 'POSIXt' object

Stack trace tryCatchOne(expr, names, parentenv, handlers[[1]])

doTryCatch(return(expr), name, parentenv, handler)

withCallingHandlers(expr = analysis(jaspResults = jaspResults, dataset = dataset, options = options), error = .addStackTrace)

analysis(jaspResults = jaspResults, dataset = dataset, options = options)

.tsCreateTableForecasts(jaspResults, fit, dataset, datasetRaw, options, ready, position = 7, dependencies = c(.tsArimaDependencies(), .tsDataDependencies(), 'forecast', 'forecastLength'))

.tsForecasts(fit, dataset, datasetRaw, options, jaspResults, ready)

seq.POSIXt(lastT, by = increment, length.out = (options$forecastLength + 1))

stop(''from' must be a 'POSIXt' object')

Expected Behaviour

I should have seen forecast plots and tables

Steps to Reproduce

  1. Open Data File 2.Select Time Series: ARIMA
  2. Select the Sales Variable for the Time Series as the Dependent Variable. Do not select any time sequence variable, just the Sales variable as the dependent variable.
  3. Under Forecast Enter any number greater than 0 for number of forecasts 5 Click on box for Forecast Table. ...

Log (if any)

00:00:00.000: EngineRepresentation::sendLogCfg() 00:00:00.000: EngineRepresentation::sendLogCfg() 00:00:39.507: Analysis ARIMA (6) changes status from: complete to: aborting 00:00:39.512: MainWindow::setAnalysesAvailable(false) 00:00:39.513: Analysis(00000295AE931CB0)::destroyForm() called it has a AnalysisForm 00000295C4545790 so let's destroy it 00:00:39.515: ~AnalysisForm 00000295C4545790 00:00:43.159: DataSetView::setSelectionStart( row=0, col=0 ) 00:00:46.405: DataSetView::setSelectionStart( row=0, col=1 ) 00:00:48.588: ComputeColumnsConstructor.qml initializeFromJSON got: '{} ' 00:01:02.662: DataSetView::setSelectionStart( row=0, col=3 ) 00:01:02.679: Received QML warnings: qrc:/components/JASP/Widgets/JASPDataView.qml:228:2: QML JASPScrollBar: Binding loop detected for property "visible"

00:01:02.686: Received QML warnings: qrc:/components/JASP/Widgets/JASPDataView.qml:228:2: QML JASPScrollBar: Binding loop detected for property "visible"

00:01:02.703: ComputeColumnsConstructor.qml initializeFromJSON got: '{} ' 00:01:20.842: MainWindow::~MainWindow() 00:01:20.842: Analyses::destroyAllForms() 00:01:21.481: DataSetPackage::reset() 00:01:21.482: DataSetPackage::endLoadingData 00:01:21.483: ColumnEncoder::setCurrentNames(#0) 00:01:21.483: waiting filter with requestid: 2 is now: generatedFilter <- rep(TRUE, rowcount)

Above you see the code that JASP generates for both value filtering and the drag&drop filter.

This default result is stored in 'generatedFilter' and can be replaced or combined with a custom filter.

To combine you can append clauses using '&': 'generatedFilter & customFilter & perhapsAnotherFilter'

Click the (i) icon in the lower right corner for further help.

generatedFilter

00:01:21.489: Killing Engine #2 00:01:21.490: Engine # 2 finished while in state 'killed' normally and with exitCode 0! 00:01:21.490: EngineRepresentation::handleEngineCrash(): Engine # 2 process does not exist (anymore) and it's state is killed. 00:01:21.490: ~EngineRepresentation() Engine #2 00:01:21.502: Killing Engine #1 00:01:21.502: Engine # 1 finished while in state 'killed' normally and with exitCode 0! 00:01:21.502: EngineRepresentation::handleEngineCrash(): Engine # 1 process does not exist (anymore) and it's state is killed. 00:01:21.502: ~EngineRepresentation() Engine #1 sales.csv

More Debug Information

No response

Final Checklist

tomtomme commented 2 weeks ago

Confirmed with 0.19 flatpak. Renamed file with error: sales.jasp.zip