APIs Nativas Python

Você pode chamar APIs nativas do Python de seus scripts para interagir com o SPSS Modeler.

As APIs a seguir são suportadas.

Para ver um exemplo, você pode baixar o stream de amostrapython-extension-str.zip e importá-lo paraSPSS Modeler (no Ativos aba, clique Novo ativo > Crie modelos como um fluxo visual > Arquivo local . Em seguida, abra as propriedades do nó da Extensão no fluxo para ver a sintaxe de exemplo.

APIs para modelos de dados

  • modelerpy.isComputeDataModelOnly()

    Você pode usar esta API para verificar se uma execução atual é para computar os dados de saída ou apenas computar o modelo de dados de saída. Quando ele retorna true, seu script não deve executar nenhuma tarefa que dependa de dados de entrada ou de saída, caso contrário, a execução falhará

  • modelerpy.getDataModel()

    Esta API entra em contato com o SPSS Modeler para obter o modelo de dados para um dataset de entrada. O valor de retorno é uma instância de class DataModel, que descreve metadados do conjunto de dados de entrada, incluindo contagem de campo, nome do campo, tipo de armazenamento de campo, etc.

  • modelerpy.setOutputDataModel(dataModel)

    Essa API envia uma instância de uma classe DataModel de volta para SPSS Modelere deve ser chamada antes que seu script passe um conjunto de dados para SPSS Modeler. O SPSS Modeler usa os metadados descritos nessa instância do DataModel para manipular seus dados no lado do SPSS Modeler .

APIs para modelagem

  • modelerpy.saveModel(model, name='model')

    Essa API transforma um modelo Python em um modelo SPSS Modeler , que SPSS Modeler salva em seguida. O modelo salvo é copiado para um nugget do modelo gerado Chame essa API de um nó de modelagem quando um modelo Python for construído.

  • modelerpy.loadModel(name='model')

    Esta API carrega um modelo salvo SPSS Modeler e cria um objeto Python para o modelo salvo. Chame esta API do nugget modelo para carregar o modelo salvo para processamento adicional, como pontuação.

APIs para datasets de entrada / saída

  • modelerpy.readPandasDataframe()

    Esta API lê um dataset do SPSS Modeler para Python. O valor de retorno é um Python Pandas DataFrame (uma estrutura de dados bidimensional, como uma matriz bidimensional ou uma tabela com linhas e colunas).

  • modelerpy.writePandasDataframe(df)

    Essa API grava um Python Pandas DataFrame de Python para SPSS Modeler

APIs para pacotes

  • modelerpy.installPackage(package)

    Esta API puxa um pacote de pypi.org e instala-o.

  • modelerpy.uninstallPackage(package)

    Esta API desinstala um pacote instalado.

  • modelerpy.listPackages()

    Esta API fornece uma lista dos pacotes instalados.

APIs para metadados

Use as classes relacionadas a metadados a seguir com modelerpy.getDataModel e modelerpy.setOutputDataModel
  • modelerpy.DataModel

    Esta API é a principal classe de entrada para os metadados. Ele contém uma matriz de instâncias de class Field e inclui os seguintes métodos

    • modelerpy.DataModel.getFields

      Este método retorna a matriz de class Field instâncias.

    • modelerpy.DataModel.addField

      Este método adiciia uma instância de Field à matriz de metadados.

    • modelerpy.Field

      A classe Field é onde a info real info é armazenada, incluindo o nome de campo, armazenamento e medição,

    • modelerpy.Field.getName

      Este método retorna o nome do campo.

    • modelerpy.Field.getStorage

      Este método retorna o armazenamento do campo. O armazenamento válido inclui: integer, real, string, date, timee timestamp.

    • modelerpy.Field.getMeasure

      Este método retorna a medição do campo. As medições válidas incluem: discrete, flag, nominal, ordinale continuous.

O código de exemplo a seguir constrói um objeto DataModel invocando o construtor modelerpy.DataModel com uma matriz de modelerpy.Field. O construtor modelerpy.Field aceita nome de campo, armazenamento de campo e medição de campo conforme seus parâmetros de entrada (armazenamento de campo e medição de campo são necessários; a medição de campo é opcional).
dataModel = modelerpy.DataModel([
#                           %FieldName%, %StorageType%, %MeasurementType%
            modelerpy.Field(‘StringField’, ‘string’, ‘nominal’),
            modelerpy.Field(‘FloatField’, ‘real’, ‘continuous’),
            modelerpy.Field(‘IntegerField’, ‘integer’, ‘ordinal’),
            modelerpy.Field(‘BooleanField’, ‘integer’, ‘flag’),
            modelerpy.Field(‘DatetimeField’, ‘timestamp’, ‘continuous’),
            modelerpy.Field(‘TimeField’, ‘time’, ‘continuous’),
            modelerpy.Field(‘DateField’, ‘date’, ‘continuous’),
        ])
# StorageType could be: integer, real, string, date, time, timestamp
# MeasurementType could be: discrete, flag, nominal, ordinal, continuous


outputDataModel = modelerDataModel
outputDataModel.addField(modelerpy.Field(field_outlier, "real", measure="flag"))
outputDataModel.addField(modelerpy.Field(field_dist_hp, "real", measure="continuous"))