Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Cálculos en matrices de DataSet

En este ejemplo se muestra cómo realizar cálculos en matrices de conjuntos de datos.

Cargue datos de muestra.

Importe los datos del archivo de texto separado por comas.testScores.csv

ds = dataset('File','testScores.csv','Delimiter',',')
ds =       LastName          Sex             Test1    Test2    Test3    Test4     'HOWARD'          'male'          90       87       93       92        'WARD'            'male'          87       85       83       90        'TORRES'          'male'          86       85       88       86        'PETERSON'        'female'        75       80       72       77        'GRAY'            'female'        89       86       87       90        'RAMIREZ'         'female'        96       92       98       95        'JAMES'           'male'          78       75       77       77        'WATSON'          'female'        91       94       92       90        'BROOKS'          'female'        86       83       85       89        'KELLY'           'male'          79       76       82       80   

Hay 4 puntuaciones de prueba para cada uno de los 10 estudiantes, en formato ancho.

Promedio de variables de matriz de DataSet.

Calcule la puntuación promedio (media) de la prueba para cada alumno en la matriz del conjunto de datos y guárdela en una nueva variable,.TestAvg Las puntuaciones de las pruebas están en las columnas 3 a 6.

Se usa para convertir las variables de matriz de DataSet especificadas en una matriz numérica.double A continuación, calcule la media en la segunda dimensión (a través de columnas) para obtener el promedio de la prueba para cada alumno.

ds.TestAvg = mean(double(ds(:,3:6)),2); ds(:,{'LastName','TestAvg'})
ans =       LastName          TestAvg     'HOWARD'           90.5       'WARD'            86.25       'TORRES'          86.25       'PETERSON'           76       'GRAY'               88       'RAMIREZ'         95.25       'JAMES'           76.75       'WATSON'          91.75       'BROOKS'          85.75       'KELLY'           79.25  

Resumir la matriz de DataSet mediante una variable de agrupación.

Calcule las puntuaciones medias y máximas de las pruebas para cada sexo.

stats = grpstats(ds,'Sex',{'mean','max'},'DataVars','TestAvg')
stats =                 Sex             GroupCount    mean_TestAvg    max_TestAvg     male      'male'          5              83.8            90.5           female    'female'        5             87.35           95.25      

Esto devuelve una nueva matriz de conjunto de datos que contiene las estadísticas de Resumen especificadas para cada nivel de la variable de agrupación,.Sex

Reemplace los valores de datos.

El denominador para cada puntuación de la prueba es 100. Convierta el denominador de la puntuación de prueba en 25.

scores = double(ds(:,3:6)); newScores = scores*25/100; ds = replacedata(ds,newScores,3:6)
ds =       LastName          Sex             Test1    Test2    Test3    Test4    TestAvg     'HOWARD'          'male'           22.5    21.75    23.25       23     90.5       'WARD'            'male'          21.75    21.25    20.75     22.5    86.25       'TORRES'          'male'           21.5    21.25       22     21.5    86.25       'PETERSON'        'female'        18.75       20       18    19.25       76       'GRAY'            'female'        22.25     21.5    21.75     22.5       88       'RAMIREZ'         'female'           24       23     24.5    23.75    95.25       'JAMES'           'male'           19.5    18.75    19.25    19.25    76.75       'WATSON'          'female'        22.75     23.5       23     22.5    91.75       'BROOKS'          'female'         21.5    20.75    21.25    22.25    85.75       'KELLY'           'male'          19.75       19     20.5       20    79.25  

Las dos primeras líneas de código extraen los datos de prueba y realizan el cálculo deseado. A continuación, vuelve a insertar las nuevas puntuaciones de prueba en la matriz del conjunto de datos.replacedata

La variable de los promedios de puntuación de prueba, es ahora la puntuación final para cada estudiante.TestAvg

Cambie el nombre de la variable.

Cambie el nombre de la variable a.Final

ds.Properties.VarNames{end} = 'Final'; ds
ds =       LastName          Sex             Test1    Test2    Test3    Test4    Final     'HOWARD'          'male'           22.5    21.75    23.25       23     90.5     'WARD'            'male'          21.75    21.25    20.75     22.5    86.25     'TORRES'          'male'           21.5    21.25       22     21.5    86.25     'PETERSON'        'female'        18.75       20       18    19.25       76     'GRAY'            'female'        22.25     21.5    21.75     22.5       88     'RAMIREZ'         'female'           24       23     24.5    23.75    95.25     'JAMES'           'male'           19.5    18.75    19.25    19.25    76.75     'WATSON'          'female'        22.75     23.5       23     22.5    91.75     'BROOKS'          'female'         21.5    20.75    21.25    22.25    85.75     'KELLY'           'male'          19.75       19     20.5       20    79.25

Consulte también

| | |

Ejemplos relacionados

Más acerca de