我正在使用QlikSense Desktop最新版本,并尝试使用Pytools.Prophet运行预测。
但是它没有显示输出。这是我使用的数据和功能。
PyTools.Prophet([Data_col.autoCalendar.Date],Avg(Shipments),'freq=M'). I am not getting the forecast line.
Qlik py工具位于C:\ Users \用户名\ Documents \ qlik-py-tools-6.2文件夹中,我启动文件“ Qlik-Py-Start.bat”。
我启动.bat文件,然后打开C:\ Users \用户名\ Documents \ Qlik \ Sense \ Apps中的Qliksense Desktop应用程序。
它仅在命令提示符下显示:
2020-01-13 21:49:45,114 - INFO - Adding to capabilities: Prophet_Multivariate(['a_date', 'b_value', 'c_holidays', 'd_added_regressors', 'e_regressor_args', 'f_other_args'])
2020-01-13 21:49:45,114 - INFO - Adding to capabilities: Prophet_Seasonality_Multivariate(['a_season', 'b_time_series', 'c_holidays', 'd_added_regressors', 'e_regressor_args', 'f_other_args'])
2020-01-13 21:49:45,114 - INFO - Adding to capabilities: sklearn_Calculate_Metrics_Sequence(['a_model_name', 'b_key', 'n_features'])
2020-01-13 21:54:15,378 - INFO - ipv6:[::1]:55612 - Capability 'Prophet' called by user Personal\Me from app C:\Users\user-name\Documents\Qlik\Sense\Apps\forecastv2.qvf
2020-01-13 21:54:15,379 - INFO - ExecuteFunction (functionId: 5, _prophet)
_
我还将两个位置的初始化文件都更改为:SSEPlugin=PyTools,localhost:50055;
一个位于C:/ Users // Documents / Qlik / Sense /,另一个位于C:/ Users / AppData / Local / Programs / Qlik / Sense / Engine。将SSE设置添加到两个文件中。
这里是我正在使用的数据:
Quarter Shipments
1/1/1986 4009
2/1/1986 4123
3/1/1986 4493
4/1/1986 4595
5/1/1986 4245
6/1/1986 4321
7/1/1986 4522
8/1/1986 4806
9/1/1986 4799
10/1/1986 4900
11/1/1986 400
12/1/1986 5000
1/1/1987 3000
2/1/1987 2456
3/1/1987 1234
4/1/1987 3456
5/1/1987 7878
Here is the debug result:
ProphetForQlik日志:2020年1月15日星期三11:03:33
先知参数:{'freq':'M','debug':'true'}
实例创建参数:{}
制作未来的数据帧参数:{'句号':0,'频率':'M'}
添加季节性参数:{}
适合的参数:{}
请求数据帧:(17,2)行x列
ds y
0 1986-01-01 4009.0
1 1986-02-01 4123.0
2 1986-03-01 4493.0
3 1986-04-01 4595.0
4 1986-05-01 4245.0
...
ds y
12 1987-01-01 3000.0
13 1987-02-01 2456.0
14 1987-03-01 1234.0
15 1987-04-01 3456.0
16 1987-05-01 7878.0
[输入数据帧:(0,2)行x列]
空数据框列:[ds,y]索引:[]...空数据框列:[ds,y]索引:[]
无法生成预测,因为请求包含少于两个非空行
当我传递此数据时:
Quarter Shipments
1/1/1986 4009
2/1/1986 4123
3/1/1986 4493
4/1/1986 4595
5/1/1986 4245
6/1/1986 4321
7/1/1986 4522
8/1/1986 4806
9/1/1986 4799
10/1/1986 4900
11/1/1986 400
12/1/1986 5000
1/1/1987 3000
2/1/1987 2456
3/1/1987 1234
4/1/1987 3456
5/1/1987 7878
6/1/1987
7/1/1987
8/1/1987
当我使用将来的值运行此数据时,Python会引发错误。
请求数据帧:(22,2)行x cols
ds y
0 1986-01-01 4009.0
1 1986-02-01 4123.0
2 1986-03-01 4493.0
3 1986-04-01 4595.0
4 1986-05-01 4245.0
...
ds y
17 1987-06-01 NaN
18 1987-07-01 NaN
19 1987-08-01 NaN
20 1987-09-01 NaN
21 1987-10-01 NaN
输入数据帧:(17,2)行x列
ds y
0 1986-01-01 4009.0
1 1986-02-01 4123.0
2 1986-03-01 4493.0
3 1986-04-01 4595.0
4 1986-05-01 4245.0
...DSÿ12 1987-01-01 3000.013 1987-02-01 2456.014 1987-03-01 1234.015 1987-04-01 3456.016 1987-05-01 7878.0
2020-01-15 11:59:36,511-错误-异常迭代响应:类型的对象不能安全地解释为整数。
追踪(最近通话):文件“ C:\ Users \用户名\ Documents \ qlik-py-tools-6.3 \ qlik-py-env \ lib \ site-packages \ numpy \ core \ function_base.py”,行117,在linspace中num = operator.index(num)TypeError:'numpy.float64'对象c不能解释为整数
在处理以上异常期间,发生了另一个异常:
追踪(最近通话):_take_response_from_response_iterator中的第453行的文件“ C:\ Users \用户名\ Documents \ qlik-py-tools-6.3 \ qlik-py-env \ lib \ site-packages \ grpc_server.py”返回next(response_iterator),真
文件“ main。py”,第342行,在_prophet中预测= dictor.predict()预测中的文件“ C:\ Users \用户名\ Documents \ qlik-py-tools-6.3 \ qlik-py-env \ core_prophet.py”,第272行self.model.fit(self.input_df,** self.fit_kwargs)
文件“ C:\ Users \用户名\ Documents \ qlik-py-tools-6.3 \ qlik-py-env \ lib \ site-packages \ fbprophet \ forecaster.py”,行1032,适合self.set_changepoints()
文件“ C:\ Users \用户名\ Documents \ qlik-py-tools-6.3 \ qlik-py-env \ lib \ site-packages \ fbprophet \ forecaster.py”,行347,在set_changepoints中np.linspace(0,hist_size-1,self.n_changepoints +1)
文件“ << [[array_function内部构件>”,第6行,在linspace中
文件“ C:\ Users \用户名\ Documents \ qlik-py-tools-6.3 \ qlik-py-env \ lib \ site-packages \ numpy \ core \ function_base.py”,行linspace中的第121行.format(type(num)))>TypeError:类型的对象不能安全地解释为整数。
我正在使用QlikSense Desktop最新版本,并尝试使用Pytools.Prophet运行预测。但这没有显示输出。这是我使用的数据和功能。 PyTools.Prophet([...
debug=true
(除freq
之外),并跟踪通过Python执行的步骤。