Modèle de contenu de table
Le modèle de contenu de table fournit un modèle simple permettant d'accéder à des données de ligne ou de colonne simples. Les valeurs d'une colonne particulière doivent avoir le même type de stockage (par exemple, des chaîne ou des entiers).
API
| Méthode | Types de retour | Description |
|---|---|---|
getRowCount() |
int |
Renvoie le nombre de lignes de cette table. |
getColumnCount() |
int |
Renvoie le nombre de colonnes de cette table. |
getColumnName(int columnIndex) |
String |
Renvoie le nom de la colonne à l'index de colonne spécifié. L'index de colonne démarre à 0. |
getStorageType(int columnIndex) |
StorageType |
Renvoie le type de stockage de la colonne à l'index spécifié. L'index de colonne démarre à 0. |
getValueAt(int rowIndex, int columnIndex) |
Object |
Renvoie la valeur figurant à l'index de ligne et de colonne spécifié. Les index des lignes et des colonnes commencent à 0. |
reset() |
void |
Vide la mémoire interne associée à ce modèle de contenu. |
Noeuds et sorties
Ce tableau répertorie les nœuds qui créent des sorties incluant ce type de modèle de contenu.
| Nom du noeud | Nom de sortie | ID de conteneur |
|---|---|---|
table |
table |
"table" |
Exemple de script
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