Zurück zur englischen Version der DokumentationTabelleninhaltsmodell
Tabelleninhaltsmodell
Letzte Aktualisierung: 07. Okt. 2024
Das Tabelleninhaltsmodell stellt ein einfaches Modell für den Zugriff auf einfache Zeilen- und Spaltendaten bereit. Die Werte in einer bestimmten Spalte müssen alle denselben Speichertyp haben (z. B. Zeichenfolgen oder Ganzzahlen).
API
Methode | Rückgabetypen | Beschreibung |
---|---|---|
getRowCount() |
int |
Gibt die Anzahl der Zeilen in dieser Tabelle zurück. |
getColumnCount() |
int |
Gibt die Anzahl der Spalten in dieser Tabelle zurück. |
getColumnName(int columnIndex) |
String |
Gibt den Namen der Spalte am angegebenen Spaltenindex zurück. Der Spaltenindex beginnt bei 0. |
getStorageType(int columnIndex) |
StorageType |
Gibt den Speichertyp der Spalte am angegebenen Index zurück. Der Spaltenindex beginnt bei 0. |
getValueAt(int rowIndex, int columnIndex) |
Object |
Gibt den Wert am angegebenen Zeilen- und Spaltenindex zurück. Die Zeilen-und Spaltenindizes beginnen bei 0. |
reset() |
void |
Führt eine Flushoperation für den internen Speicher aus, der diesem Inhaltsmodell zugeordnet ist. |
Knoten und Ausgaben
In dieser Tabelle werden Knoten aufgelistet, die Ausgaben erstellen, die diesen Typ von Inhaltsmodell enthalten.
Knotenname | Name der Ausgabe | Container-ID |
---|---|---|
table |
table |
"table" |
Beispielscript
stream = modeler.script.stream()
from modeler.api import StorageType
# Set up the variable file import node
varfilenode = stream.createAt("variablefile", "DRUG Data", 96, 96)
varfilenode.setPropertyValue("full_filename", "$CLEO_DEMOS/DRUG1n")
# Next create the aggregate node and connect it to the variable file node
aggregatenode = stream.createAt("aggregate", "Aggregate", 192, 96)
stream.link(varfilenode, aggregatenode)
# Configure the aggregate node
aggregatenode.setPropertyValue("keys", ["Drug"])
aggregatenode.setKeyedPropertyValue("aggregates", "Age", ["Min", "Max"])
aggregatenode.setKeyedPropertyValue("aggregates", "Na", ["Mean", "SDev"])
# Then create the table output node and connect it to the aggregate node
tablenode = stream.createAt("table", "Table", 288, 96)
stream.link(aggregatenode, tablenode)
# Execute the table node and capture the resulting table output object
results = []
tablenode.run(results)
tableoutput = results[0]
# Access the table output's content model
tablecontent = tableoutput.getContentModel("table")
# For each column, print column name, type and the first row
# of values from the table content
col = 0
while col < tablecontent.getColumnCount():
print tablecontent.getColumnName(col), \
tablecontent.getStorageType(col), \
tablecontent.getValueAt(0, col)
col = col + 1