Renombrar y describir variables de tabla
Las tablas, que almacenan datos en variables orientadas a columnas, proporcionan propiedades que pueden almacenar información más descriptiva sobre los datos. Por ejemplo, los nombres de variables se almacenan en una propiedad, de manera que si desea renombrar variables para que sean más descriptivas, puede cambiar una propiedad de la tabla para hacerlo. Este ejemplo muestra cómo acceder a las propiedades de las tablas y cambiarlas, como los nombres, descripciones y unidades de las variables de la tabla. El ejemplo también muestra cómo generar un resumen de una tabla para ver las propiedades con estadísticas sobre los datos en las variables de la tabla.
Crear una tabla a partir de datos de muestra
Cree una tabla usando un subconjunto de los datos de pacientes de muestra del archivo patients.mat.
load patients.mat
BloodPressure = [Systolic Diastolic];
LastName = string(LastName);
T = table(LastName,Age,Height,Weight,Smoker,BloodPressure)T=100×6 table
LastName Age Height Weight Smoker BloodPressure
__________ ___ ______ ______ ______ _____________
"Smith" 38 71 176 true 124 93
"Johnson" 43 69 163 false 109 77
"Williams" 38 64 131 false 125 83
"Jones" 40 67 133 false 117 75
"Brown" 49 64 119 false 122 80
"Davis" 46 68 142 false 121 70
"Miller" 33 64 142 true 130 88
"Wilson" 40 68 180 false 115 82
"Moore" 28 68 183 false 115 78
"Taylor" 31 66 132 false 118 86
"Anderson" 45 68 128 false 114 77
"Thomas" 42 66 137 false 115 68
"Jackson" 25 71 174 false 127 74
"White" 39 72 202 true 130 95
"Harris" 36 65 129 false 114 79
"Martin" 48 71 181 true 130 92
⋮
Acceder a las propiedades de una tabla
Las tablas tienen propiedades que puede utilizar para describir la tabla como un conjunto, así como sus variables individuales.
Las tablas almacenan sus propiedades en un objeto Properties. Para acceder a las propiedades de una tabla, utilice la notación de puntos.
T.Properties
ans =
TableProperties with properties:
Description: ''
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'LastName' 'Age' 'Height' 'Weight' 'Smoker' 'BloodPressure'}
VariableTypes: ["string" "double" "double" "double" "logical" "double"]
VariableDescriptions: {}
VariableUnits: {}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
También puede usar la notación de puntos para acceder a una propiedad concreta. Por ejemplo, acceda a la propiedad que almacena el arreglo de nombres de variables.
T.Properties.VariableNames
ans = 1×6 cell
{'LastName'} {'Age'} {'Height'} {'Weight'} {'Smoker'} {'BloodPressure'}
Renombrar variables de tabla
Los nombres de variables son más útiles cuando son descriptivos. Por ello, se recomienda renombrar las variables de las tablas.
La forma recomendada de renombrar las variables es utilizar la función renamevars. Por ejemplo, renombre la variable LastName de T a PatientName.
T = renamevars(T,"LastName","PatientName")
T=100×6 table
PatientName Age Height Weight Smoker BloodPressure
___________ ___ ______ ______ ______ _____________
"Smith" 38 71 176 true 124 93
"Johnson" 43 69 163 false 109 77
"Williams" 38 64 131 false 125 83
"Jones" 40 67 133 false 117 75
"Brown" 49 64 119 false 122 80
"Davis" 46 68 142 false 121 70
"Miller" 33 64 142 true 130 88
"Wilson" 40 68 180 false 115 82
"Moore" 28 68 183 false 115 78
"Taylor" 31 66 132 false 118 86
"Anderson" 45 68 128 false 114 77
"Thomas" 42 66 137 false 115 68
"Jackson" 25 71 174 false 127 74
"White" 39 72 202 true 130 95
"Harris" 36 65 129 false 114 79
"Martin" 48 71 181 true 130 92
⋮
Otra forma de renombrar las variables es acceder a la propiedad T.Properties.VariableNames. Por ejemplo, renombre la variable BloodPressure.
T.Properties.VariableNames("BloodPressure") = "BP"
T=100×6 table
PatientName Age Height Weight Smoker BP
___________ ___ ______ ______ ______ __________
"Smith" 38 71 176 true 124 93
"Johnson" 43 69 163 false 109 77
"Williams" 38 64 131 false 125 83
"Jones" 40 67 133 false 117 75
"Brown" 49 64 119 false 122 80
"Davis" 46 68 142 false 121 70
"Miller" 33 64 142 true 130 88
"Wilson" 40 68 180 false 115 82
"Moore" 28 68 183 false 115 78
"Taylor" 31 66 132 false 118 86
"Anderson" 45 68 128 false 114 77
"Thomas" 42 66 137 false 115 68
"Jackson" 25 71 174 false 127 74
"White" 39 72 202 true 130 95
"Harris" 36 65 129 false 114 79
"Martin" 48 71 181 true 130 92
⋮
Cambiar otras propiedades
Para cambiar cualquier otra propiedad de una tabla, debe utilizar la notación de puntos. En general, puede utilizar las otras propiedades para anotar en la tabla información que la describa a ella o a las variables.
Por ejemplo, añada una descripción de la tabla en conjunto. Asigne una cadena a la propiedad Description. Además, añada unidades que estén asociadas a las variables de la tabla. Asigne un arreglo de cadenas de las unidades a la propiedad VariableUnits. Aunque la propiedad almacena un arreglo de celdas de vectores de caracteres, es posible asignar valores usando un arreglo de cadenas. Una cadena vacía individual dentro del arreglo de cadenas indica que la variable correspondiente no tiene unidades.
T.Properties.Description = "Table of Data for 100 Patients"; T.Properties.VariableUnits = ["","yr","in","lbs","","mm Hg"]; T.Properties
ans =
TableProperties with properties:
Description: 'Table of Data for 100 Patients'
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'PatientName' 'Age' 'Height' 'Weight' 'Smoker' 'BP'}
VariableTypes: ["string" "double" "double" "double" "logical" "double"]
VariableDescriptions: {}
VariableUnits: {'' 'yr' 'in' 'lbs' '' 'mm Hg'}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
También puede asignar valores indexando en propiedades. Por ejemplo, añada descripciones únicamente para las variables PatientName y BP. Puede indexar por nombre o por la posición que una variable tiene en la tabla.
T.Properties.VariableDescriptions(1) = "Patient last name"; T.Properties.VariableDescriptions("BP") = "Systolic/Diastolic"; T.Properties
ans =
TableProperties with properties:
Description: 'Table of Data for 100 Patients'
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'PatientName' 'Age' 'Height' 'Weight' 'Smoker' 'BP'}
VariableTypes: ["string" "double" "double" "double" "logical" "double"]
VariableDescriptions: {'Patient last name' '' '' '' '' 'Systolic/Diastolic'}
VariableUnits: {'' 'yr' 'in' 'lbs' '' 'mm Hg'}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
Eliminar valores de las propiedades
No puede eliminar propiedades de una tabla. Sin embargo, puede eliminar los valores almacenados en las propiedades de la tabla.
Elimine la descripción de la variable LastName. Las descripciones son texto, por lo que puede eliminarlas asignando una cadena vacía como descripción nueva.
T.Properties.VariableDescriptions(1) = "";
T.Propertiesans =
TableProperties with properties:
Description: 'Table of Data for 100 Patients'
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'PatientName' 'Age' 'Height' 'Weight' 'Smoker' 'BP'}
VariableTypes: ["string" "double" "double" "double" "logical" "double"]
VariableDescriptions: {'' '' '' '' '' 'Systolic/Diastolic'}
VariableUnits: {'' 'yr' 'in' 'lbs' '' 'mm Hg'}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
Elimine todas las descripciones en VariableDescriptions. Para eliminar todos los valores almacenados en una propiedad de tabla, asigne un arreglo vacío.
Si la propiedad almacena texto en un arreglo de celdas, asigne
{}.Si la propiedad almacena valores numéricos u otros tipos de valores en un arreglo, asigne
[].
T.Properties.VariableDescriptions = {};
T.Propertiesans =
TableProperties with properties:
Description: 'Table of Data for 100 Patients'
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'PatientName' 'Age' 'Height' 'Weight' 'Smoker' 'BP'}
VariableTypes: ["string" "double" "double" "double" "logical" "double"]
VariableDescriptions: {}
VariableUnits: {'' 'yr' 'in' 'lbs' '' 'mm Hg'}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
En la sección siguiente, vuelva a añadir descripciones de variables a la tabla T.
T.Properties.VariableDescriptions = ["Patient name","","","","True if patient smokes","Systolic and diastolic readings"]; T.Properties
ans =
TableProperties with properties:
Description: 'Table of Data for 100 Patients'
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'PatientName' 'Age' 'Height' 'Weight' 'Smoker' 'BP'}
VariableTypes: ["string" "double" "double" "double" "logical" "double"]
VariableDescriptions: {'Patient name' '' '' '' 'True if patient smokes' 'Systolic and diastolic readings'}
VariableUnits: {'' 'yr' 'in' 'lbs' '' 'mm Hg'}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
Resumir datos y propiedades de variables de tablas
Puede generar un resumen de una tabla para ver sus propiedades con estadísticas de cada variable. Para generar un resumen, utilice la función summary. El resumen muestra la descripción de la tabla y las descripciones y unidades de cada variable. El resumen también muestra estadísticas de las variables de la tabla cuyos tipos de datos admitan los cálculos requeridos.
summary(T)
T: 100×6 table
Description: Table of Data for 100 Patients
Variables:
PatientName: string (Patient name)
Age: double (yr)
Height: double (in)
Weight: double (lbs)
Smoker: logical (34 true, True if patient smokes)
BP: 2-column double (mm Hg, Systolic and diastolic readings)
Statistics for applicable variables:
NumMissing Min Median Max Mean Std
PatientName 0
Age 0 25 39 50 38.2800 7.2154
Height 0 60 67 72 67.0700 2.8365
Weight 0 111 142.5000 202 154 26.5714
BP(:,1) 0 109 122 138 122.7800 6.7128
BP(:,2) 0 68 81.5000 99 82.9600 6.9325
También puede almacenar el resumen en una estructura en lugar de visualizarlo.
S = summary(T)
S = struct with fields:
PatientName: [1×1 struct]
Age: [1×1 struct]
Height: [1×1 struct]
Weight: [1×1 struct]
Smoker: [1×1 struct]
BP: [1×1 struct]
Cada campo de S contiene una descripción de una variable de T.
S.BP
ans = struct with fields:
Size: [100 2]
Type: 'double'
Description: 'Systolic and diastolic readings'
Units: 'mm Hg'
Continuity: []
NumMissing: [0 0]
Min: [109 68]
Median: [122 81.5000]
Max: [138 99]
Mean: [122.7800 82.9600]
Std: [6.7128 6.9325]
Consulte también
table | renamevars | summary