Translation not up to date
Rodzime interfejsy API języka Python można wywoływać ze skryptów w celu interakcji z programem SPSS Modeler.
Obsługiwane są następujące interfejsy API.
Aby zobaczyć przykład, można pobrać strumień dostępny tutaj i zaimportować go do programu SPSS Modeler (z projektu kliknij opcję Nowy zasób, wybierz program SPSS Modeler, a następnie wybierz opcję Plik lokalny). Następnie otwórz właściwości węzła rozszerzenia w przepływie, aby wyświetlić przykładową składnię.
Interfejsy API dla modeli danych
modelerpy.isComputeDataModelOnly()
Za pomocą tego interfejsu API można sprawdzić, czy bieżące wykonanie ma na celu obliczenie danych wyjściowych, czy tylko obliczenie modelu danych wyjściowych. Po zwróceniu wartości
true
skrypt nie może wykonywać żadnych zadań, które są zależne od danych wejściowych lub wyjściowych. W przeciwnym razie uruchomienie nie powiedzie się.modelerpy.getDataModel()
Ten interfejs API kontaktuje się z SPSS Modeler w celu uzyskania modelu danych dla wejściowego zbioru danych. Wartość zwracana jest instancją
class DataModel
, która opisuje metadane wejściowego zestawu danych, w tym liczbę pól, nazwę pola, typ składowania zmiennej itp.modelerpy.setOutputDataModel(dataModel)
Ten interfejs API wysyła instancję klasy
DataModel
z powrotem do programu SPSS Modeleri musi zostać wywołany przed przekazaniem przez skrypt zbioru danych do programu SPSS Modeler. Program SPSS Modeler wykorzysta metadane opisane w tej instancji programuDataModel
do obsługi danych po stronie SPSS Modeler .
Interfejsy API do modelowania
modelerpy.saveModel(model, name='model', compress=False)
Ten interfejs API przekształca model Python w model SPSS Modeler , który jest następnie zapisywany przez program SPSS Modeler. Ten interfejs API należy wywołać z węzła modelowania podczas budowania modelu w języku Python . Po wywołaniu tego interfejsu API zapisany model jest kopiowany do wygenerowanego modelu użytkowego.
modelerpy.loadModel(name='model')
Ten interfejs API ładuje zapisany model SPSS Modeler i tworzy obiekt Python dla zapisanego modelu. Wywołaj ten interfejs API z modelu użytkowego, aby załadować zapisany model do dalszego przetwarzania, takiego jak ocena.
Interfejsy API dla zestawów danych wejścia/wyjścia
modelerpy.readPandasDataframe()
Ten interfejs API odczytuje zbiór danych z SPSS Modeler do Python. Wartością zwracaną jest Python Pandas DataFrame (dwuwymiarowa struktura danych, taka jak tablica dwuwymiarowa lub tabela z wierszami i kolumnami).
modelerpy.writePandasDataframe(df)
Ten interfejs API zapisuje Python Pandas DataFrame z Python do programu SPSS Modeler.
Interfejsy API dla pakietów
modelerpy.installPackage(package)
Ten interfejs API pobiera pakiet z serwisu
pypi.org
i instaluje go.modelerpy.uninstallPackage(package)
Ten interfejs API deinstaluje zainstalowany pakiet.
modelerpy.listPackages()
Ten interfejs API udostępnia listę wszystkich zainstalowanych pakietów.
Interfejsy API dla metadanych
Następujące klasy powiązane z metadanymi powinny być używane z klasamimodelerpy.getDataModel
i modelerpy.setOutputDataModel
.modelerpy.DataModel
Ten interfejs API jest główną klasą pozycji dla metadanych. Zawiera on tablicę instancji klasy
class Field
i zawiera następujące metody:modelerpy.DataModel.getFields
Ta metoda zwraca tablicę instancji
class Field
.modelerpy.DataModel.addField
Ta metoda dodaje instancję klasy
Field
do tablicy metadanych.modelerpy.Field
Klasa
Field
jest miejscem, w którym zapisywane są rzeczywiste informacje metadanych, w tym nazwa zmiennej, pamięć masowa i pomiar.modelerpy.Field.getName
Ta metoda zwraca nazwę pola.
modelerpy.Field.getStorage
Ta metoda zwraca składowanie zmiennej. Poprawne są następujące pamięci masowe:
integer
,real
,string
,date
,time
itimestamp
.modelerpy.Field.getMeasure
Ta metoda zwraca pomiar zmiennej. Poprawne pomiary to:
discrete
,flag
,nominal
,ordinal
icontinuous
.
DataModel
, wywołując konstruktor modelerpy.DataModel
z tablicą modelerpy.Field
. Konstruktor modelerpy.Field
przyjmuje jako parametry wejściowe nazwę zmiennej, typ składowania zmiennej i typ pomiaru zmiennej (typ składowania zmiennej i typ pomiaru zmiennej są wymagane; pomiar zmiennej jest opcjonalny).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"))