0

我是 SPSS 建模器的新手。我正在尝试在虚拟创建的数据上使用 python 创建一个简单的数据转换。

流动

虚拟数据按执行创建。(见底部)我尝试使用我在 IBM 网站上找到的示例使用 python 访问和修改数据

import spss.pyspark.runtime
from pyspark.sql.types import *

cxt = spss.pyspark.runtime.getContext() 

if  cxt.isComputeDataModelOnly():   
        _schema = cxt.getSparkInputSchema()   
        cxt.setSparkOutputSchema(_schema)
else:   
        _structType = cxt.getSparkInputSchema()
        df = cxt.getSparkInputData()   
        _newDF = df.sample(False, 0.01, 1)
        cxt.setSparkOutputData(_newDF)

当我尝试按预览查看结果时,出现 2 个错误: - 无法获取数据模型:空 - 未收到记录

在此处输入图像描述

https://www.ibm.com/support/knowledgecenter/da/SS3RA7_18.0.0/modeler_r_nodes_ddita/clementine/r_pyspark_api_examples.html虚拟数据

整个设置看起来像这样 在此处输入图像描述

4

2 回答 2

0

我想发表评论,但没有足够的声誉,所以我不得不使用答案来提问。

您是否使用正确的语法选项卡? 扩展变换

因为当我这样使用它时,我会得到我期望的输出。 输出数据


此代码应该只返回您的数据框并将“Hello World”打印到控制台输出选项卡中:

import spss.pyspark.runtime
from pyspark.sql.types import *

cxt = spss.pyspark.runtime.getContext() 

if  cxt.isComputeDataModelOnly():   
        _schema = cxt.getSparkInputSchema()   
        cxt.setSparkOutputSchema(_schema)
else:   
        df = cxt.getSparkInputData()
        print("Hello World")
        cxt.setSparkOutputData(df)
于 2018-06-26T06:36:11.667 回答
0

您也可以尝试在同一脚本选项卡中使用旧模式。我总是使用遗留模式和类似于 Clementine(旧版本的 SPSS Modeler)的代码。

来自 IBM 的参考

于 2018-07-03T13:50:49.570 回答