Scripts - Tablas
En el script de MedCalc, una tabla es como una matriz, pero, a diferencia de estas, pueden contener números y texto. Además, se pueden formatear.
Las tablas se utilizan principalmente para la representación de datos y resultados.
Cómo crear una tabla
Una tabla es una variable de espacio de trabajo que se crea con el comando Table(tname).
El siguiente código crea una tabla con el nombre t
Table(t);
Después de ser creada, la tabla t todavía está vacía.
Cómo poner texto y valores en una tabla
Colocar valores en celdas individuales
Puede agregar o cambiar el valor de una celda de la tabla de la siguiente manera:
Table(t); t[1,1]= 'PI' ; // Place the text PI in cell with row 1 and column 1 t[1,2]=3.14; // Place the value 3.14 in cell with row 1 and column 2 ?t;
Esto da como resultado:
| PI | 3.14 |
Agregar filas y columnas
Se pueden agregar columnas y filas completas usando el AppendColumn, AppendRow, PrependColumn, y PrependRow comandos (ver Tabla comandos).
Por ejemplo:
Table(a); AppendRow(a, 'Var', 'Mean'); AppendRow(a, 'Weight',72.1); AppendRow(a, 'Height',1.68); Print(a);
resultados en:
| Var | Mean |
| Weight | 72.1 |
| Height | 1.68 |
Convertir una matriz en una tabla
Puede convertir fácilmente una matriz en una tabla asignando la matriz a la tabla.
a=Magic(4); // Create a matrix Table(t); // Create a table t=a; // Convert matrix a to table t ? 'Matrix:\n' ; ?a; ? 'Table:' ; ?t;
La salida de este script es:
Matrix:
| 16 | 2 | 3 | 13 |
| 5 | 11 | 10 | 8 |
| 9 | 7 | 6 | 12 |
| 4 | 14 | 15 | 1 |
| 16 | 2 | 3 | 13 |
| 5 | 11 | 10 | 8 |
| 9 | 7 | 6 | 12 |
| 4 | 14 | 15 | 1 |
Dar formato a una tabla
Puede formatear una tabla, una sola celda de tabla, una columna o una fila, utilizando los siguientes comandos:
- FormatTable(tname,formatstring) formatea una tabla.
- FormatTableCell(tname,row,column,formatstring) formatea una celda de tabla.
- FormatTableColumn(tname,column,formatstring) formatea una columna de tabla.
- FormatTableRow( tname,row,formatstring) formatea una fila de la tabla.
Table(a); AppendRow(a, 'Var', 'Mean'); AppendRow(a, 'Weight',72.1); AppendRow(a, 'Height',1.68); FormatTableRow(a,1, 'shaded bold'); // apply shaded and bold style to row 1 FormatTable(a, '2'); // represent all numbers using 2 decimals. Print(a);
resultados en:
| Var | Mean |
| Weight | 72.10 |
| Height | 1.68 |
Transformar una tabla mediante funciones de hoja de cálculo
Las siguientes funciones (con algunas excepciones) se pueden utilizar con tablas:
- Funciones matemáticas
- Funciones trigonométricas
- Funciones hiperbólicas
- Función gamma y funciones relacionadas
- Funciones de ingeniería
- Funciones tipo matriz:
- NCOL(table) devuelve el número de columnas de una tabla.
- NROW(tabla) devuelve el número de filas de una tabla.
- TRANSPOSE(tabla) devuelve la transposición de una tabla.
- Funciones de cadena:
- LOWER(tabla) devuelve una tabla con todas las cadenas convertidas a minúsculas
- UPPER(tabla) devuelve una tabla con todas las cadenas convertidas a
- PROPER(tabla) devuelve una tabla con el primer carácter de cada palabra convertido a mayúsculas y el resto a minúsculas.
Cuando se aplica una función numérica a una tabla, solo se aplica a las celdas que contienen un número. Del mismo modo, cuando se aplica una función de cadena a una tabla, solo se aplica a las celdas que contienen texto.
Table(a); AppendRow(a, 'Var', 'Mean'); AppendRow(a, 'Weight',72.10); AppendRow(a, 'Height',1.68); FormatTableRow(a,1, 'shaded bold'); // apply shaded and bold style to row 1 FormatTable(a, '2'); // represent all numbers using 2 decimals. Print(a); t=transpose(upper(a)); Print(t);
resultados en:
| Var | Mean |
| Weight | 72.10 |
| Height | 1.68 |
| VAR | WEIGHT | HEIGHT |
| MEAN | 72.10 | 1.68 |