원시 Python API

마지막 업데이트 날짜: 2025년 2월 11일
원시 Python API (SPSS Modeler)

스크립트에서 원시 Python API를 호출하여 SPSS Modeler와 상호작용할 수 있습니다.

다음 API가 지원됩니다.

예시를 보려면 샘플 스트림을 다운로드하세요.python-extension-str.zip 그리고 그것을 가져옵니다SPSS Modeler (에서 자산 탭, 클릭 새로운 자산 > 시각적 흐름으로 모델 구축 > 로컬 파일 . 그런 다음 플로우에서 확장 노드 특성을 열어 예제 구문을 확인하십시오.

데이터 모델용 API

  • modelerpy.isComputeDataModelOnly()

    이 API를 사용하여 현재 실행이 출력 데이터를 계산하거나 출력 데이터 모델만 계산하는지 여부를 확인할 수 있습니다. true를 리턴하면 스크립트가 입력 또는 출력 데이터에 종속된 태스크를 수행하지 않아야 합니다. 그렇지 않으면 실행에 실패합니다.

  • modelerpy.getDataModel()

    이 API는 SPSS Modeler 에 접속하여 입력 데이터 세트에 대한 데이터 모델을 가져옵니다. 리턴값은 필드 개수, 필드 이름, 필드 저장 공간 유형 등을 포함하여 입력 데이터 세트의 메타데이터를 설명하는 class DataModel의 인스턴스입니다.

  • modelerpy.setOutputDataModel(dataModel)

    이 API는 DataModel 클래스의 인스턴스를 SPSS Modeler로 다시 보내며, 스크립트가 SPSS Modeler로 데이터 세트를 전달하기 전에 호출해야 합니다. SPSS Modeler 는 이 DataModel 인스턴스에 설명된 메타데이터를 사용하여 SPSS Modeler 측에서 데이터를 처리합니다.

모델링을 위한 API

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

    이 API는 Python 모델을 SPSS Modeler 가 저장하는 SPSS Modeler 모델로 변환합니다. 저장된 모델이 생성된 모델 너깃에 복사됩니다. Python 모델이 빌드될 때 모델링 노드에서 이 API를 호출합니다.

  • modelerpy.loadModel(name='model')

    이 API는 SPSS Modeler 저장된 모델을 로드하고 저장된 모델에 대한 Python 오브젝트를 작성합니다. 모델 너깃에서 이 API를 호출하여 스코어링과 같은 추가 처리를 위해 저장된 모델을 로드하십시오.

입/출력 (I/O) 데이터 세트에 대한 API

  • modelerpy.readPandasDataframe()

    이 API는 SPSS Modeler 에서 Python으로 데이터 세트를 읽습니다. 리턴값은 Python Pandas DataFrame (2차원배열과 같은 2차원데이터 구조 또는 행과 열이 있는 테이블) 입니다.

  • modelerpy.writePandasDataframe(df)

    이 API는 Python 에서 SPSS Modeler로 Python Pandas DataFrame 을 작성합니다.

패키지용 API

  • modelerpy.installPackage(package)

    이 API는 pypi.org 에서 패키지를 가져와서 설치합니다.

  • modelerpy.uninstallPackage(package)

    이 API는 설치된 패키지를 설치 제거합니다.

  • modelerpy.listPackages()

    이 API는 설치된 모든 패키지의 목록을 제공합니다.

메타데이터에 대한 API

modelerpy.getDataModelmodelerpy.setOutputDataModel와 함께 다음 메타데이터 관련 클래스를 사용하십시오.
  • modelerpy.DataModel

    이 API는 메타데이터의 기본 항목 클래스입니다. class Field 의 인스턴스 배열을 포함하며 다음 메소드를 포함합니다.

    • modelerpy.DataModel.getFields

      이 메소드는 class Field 인스턴스의 배열을 리턴합니다.

    • modelerpy.DataModel.addField

      이 메소드는 Field 의 인스턴스를 메타데이터 배열에 추가합니다.

    • modelerpy.Field

      Field 클래스는 필드 이름, 스토리지 및 측정을 포함하여 실제 메타데이터 정보가 저장되는 위치입니다.

    • modelerpy.Field.getName

      이 메소드는 필드의 이름을 리턴합니다.

    • modelerpy.Field.getStorage

      이 메소드는 필드의 저장 공간을 리턴합니다. 올바른 스토리지는 integer, real, string, date, timetimestamp입니다.

    • modelerpy.Field.getMeasure

      이 메소드는 필드의 측정치를 리턴합니다. 올바른 측정 단위는 discrete, flag, nominal, ordinalcontinuous입니다.

다음 예제 코드는 modelerpy.Field배열로 modelerpy.DataModel 생성자를 호출하여 DataModel 오브젝트를 구성합니다. modelerpy.Field 생성자는 필드 이름, 필드 저장 공간 및 필드 측정을 입력 매개변수로 허용합니다 (필드 저장 공간 및 필드 측정은 필수임, 필드 측정은 선택사항임).
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"))