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.

dataset

Clase: dataset

Construir matriz de DataSet

El tipo de datos puede eliminarse en una versión futura.dataset Para trabajar con datos heterogéneos, utilice el tipo de datos en su lugar.MATLAB®table Consulte la documentación para obtener más información.MATLABtable

Sintaxis

A = dataset(varspec,'ParamName',Value)
A = dataset('File',filename,'ParamName',Value)
A = dataset('XLSFile',filename,'ParamName',Value)
A = dataset('XPTFile',xptfilename,'ParamName',Value)

Descripción

A = dataset(varspec,'ParamName',Value) crea una matriz de DataSet utilizando el método de entrada variable del espacio de trabajoA varspec y uno o varios pares de nombre/valor opcionales (consulte pares de nombre/valor de parámetro).

El método de entrada varspec puede ser uno o más de los siguientes:

  • VAR — una variable de espacio de trabajo. utiliza el nombre del área de trabajo para el nombre de variable.datasetA Para incluir varias variables, especifique VAR_1,VAR_2,...,VAR_N. Las variables pueden ser matrices de cualquier tamaño, pero todas las variables deben tener el mismo número de filas. también puede ser una expresión.VAR En este caso, crea un nombre predeterminado automáticamente.dataset

  • {VAR,name} — una variable de espacio de trabajo, VAR y un nombre de variable, name . Utilizadataset name como el nombre de la variable. Para incluir varias variables y nombres, especifique {VAR_1,name_1}, {VAR_2,name_2},..., {VAR_N,name_N}.

  • {VAR,name_1,...,name_m}: variable de espacio de trabajo de una columna,m VAR. utiliza los nombresdataset name_1, ..., name_m como nombres de variables. Debe incluir un nombre para cada columna de.VAR Cada columna se convierte en una variable independiente.A

Puede combinar estos métodos de entrada para incluir tantas variables y nombres como sea necesario. Los nombres deben ser identificadores únicos válidos.MATLAB Por ejemplo, combinaciones de entrada, consulte ejemplos. Para pares de nombre/valor opcionales, consulte entradas.

Para convertir matrices numéricas, matrices de celdas, matrices de estructuras o tablas en matrices de DataSet, también puede usar (respectivamente):

Nota

Las matrices de conjuntos de datos pueden contener tipos integrados o objetos de matriz como variables. Los objetos array deben implementar cada uno de los siguientes:

  • Indexación de paréntesis estándar del formulario, donde es un vector numérico o lógico correspondiente a las filas de la variableMATLABvar(i,...)i

  • Un método con un argumentosizedim

  • Un métodovertcat

A = dataset('File',filename,'ParamName',Value) crea una matriz de DataSet a partir de datos orientados a columnas en el archivo de texto especificado por.Afilename Las variables en son de tipo si los datos en la columna correspondiente del archivo, siguiendo el encabezado de la columna, son completamente numéricos; de lo contrario las variables en son matrices de celdas de vectores de caracteres. convierte los campos vacíos a cualquiera (para una variable numérica) o al vector de caracteres vacío (para una variable con valores de caracteres). omite el espacio en blanco insignificante del archivo.AdoubleAdatasetNaNdataset No puede especificar una variable de archivo y espacio de trabajo como entrada. Consulte pares de nombre/valor para obtener más información.

A = dataset('XLSFile',filename,'ParamName',Value) crea una matriz de DataSet a partir de datos orientados a columnas en la hoja de cálculo especificada por.AExcel®filename Las variables en son de tipo si los datos en la columna correspondiente de la hoja de cálculo, siguiendo el encabezado de la columna, son completamente numéricos; de lo contrario las variables en son matrices de celdas de vectores de caracteres.AdoubleA Consulte pares de nombre/valor para obtener más información.

A = dataset('XPTFile',xptfilename,'ParamName',Value) crea una matriz de DataSet a partir de un archivo de formato XPORT.SAS® Se conservan los nombres de variable del archivo de formato XPORT. Los tipos de datos numéricos en el archivo de formato XPORT se conservan, pero todos los demás tipos de datos se convierten en matrices de celdas de vectores de caracteres. El formato XPORT permite 28 tipos de datos faltantes. representa estos en el archivo por una letra mayúscula, o. convierte todos los datos que faltan en valores.dataset'.''_'datasetNaNA Consulte pares de nombre/valor para obtener más información.

Pares nombre/valor de parámetro

Especifique uno o varios de los siguientes pares de nombre/valor al construir un DataSet:

VarNames

Matriz de cadenas o matriz de celdas que nombra las variables con los nombres de variable especificados.{name_1,...,name_m}mA Los nombres deben ser identificadores únicos válidos.MATLAB El número de nombres debe ser igual al número de variables en.A No puede utilizar el parámetro si proporciona nombres para variables individuales mediante pares.VarNames{VAR,name} Para especificar Cuándo se utiliza un archivo como entrada, se establece en.VarNamesReadVarNamesfalse

ObsNames

Matriz de cadenas o matriz de celdas que nombra las observaciones con los nombres de observación especificados.{name_1,...,name_n}nA Los nombres no necesitan ser identificadores válidos, pero deben ser únicos.MATLAB El número de nombres debe ser igual al número de observaciones (filas) en.A Para especificar Cuándo se utiliza un archivo como entrada, se establece en.ObsNamesReadObsNamesfalse

Name/value pairs available when using text files as inputs:

Delimiter

Un vector de caracteres o un escalar de cadena que indica el carácter que separa las columnas del archivo. Los valores se

  • (Tab, el valor predeterminado cuando no se especifica)'\t'format

  • (espacio, el valor predeterminado cuando se especifica un)' 'format

  • coma','

  • punto y coma';'

  • bar'|'

Format

Un vector de caracteres de formato o escalar de cadena, tal y como acepta. Lee el archivo utilizando y crea variables según los especificadores de conversión en el vector de caracteres de formato o escalar de cadena.textscandatasettextscanA También puede proporcionar los pares de nombre/valor aceptados por.textscan El uso del parámetro es mucho más rápido para archivos de gran tamaño.Format Si es así, debe incluir un especificador de formato para la primera columna del archivo.ReadObsNamestrueformat

HeaderLines

Valor numérico que indica el número de líneas que se omiten al principio de un archivo.

Predeterminado: 0

TreatAsEmpty

Especifica los caracteres que se tratarán como el vector de caracteres vacío en una columna numérica. Los valores pueden ser una matriz de caracteres, una matriz de cadenas o una matriz de vectores de caracteres. El parámetro solo se aplica a las columnas numéricas del archivo; no acepta literales numéricos como.dataset'-99'

Pares de nombre/valor disponibles cuando se utilizan archivos de texto u hojas de cálculo como entradas:Excel

ReadVarNames

Un valor lógico que indica si () o not () para leer los nombres de variable de la primera fila del archivo.truefalse El valor predeterminado es.true Si es así, los nombres de variable en los encabezados de columna del archivo o rango (si se usa una hoja de cálculo) no pueden estar vacíos.ReadVarNamestrueExcel

ReadObsNames

Un valor lógico que indica si () o not () para leer los nombres de observación de la primera columna del archivo o rango (si se utiliza una hoja de cálculo).truefalseExcel El valor predeterminado es.false Si y son ambos, guarda el encabezado de la primera columna en el archivo o rango como el nombre de la primera dimensión en.ReadObsNamesReadVarNamestruedatasetA.Properties.DimNames

Al leer desde un archivo de formato, el par nombre/valor del parámetro determina si se intenta o no utilizar la primera variable del archivo como nombres de observación.XPTReadObsNames Especifique como un valor lógico (predeterminado).false Si el contenido de la primera variable no son nombres de observación válidos, a continuación, lee la variable en una variable de la matriz de conjunto de datos y no establece los nombres de observación.dataset

Pares de nombre/valor disponibles cuando se utilizan hojas de cálculo como entrada:Excel

Sheet

Un valor escalar positivo de tipo que indica el número de hoja o un nombre de hoja citado.double

Range

Un vector de caracteres o un escalar de cadena de la forma donde y son los nombres de las celdas en las esquinas opuestas de una región rectangular que se va a leer, como para.'C1:C2'C1C2xlsread De forma predeterminada, la región rectangular se extiende a la columna de la derecha que contiene los datos. Si la hoja de cálculo contiene columnas vacías entre columnas de datos, o si la hoja de cálculo contiene figuras u otra información no tabular, especifique un rango que contenga solo datos.

Ejemplos

Cree una matriz de DataSet a partir de variables de espacio de trabajo, incluidos nombres de observación:

load cereal cereal = dataset(Calories,Protein,Fat,Sodium,Fiber,Carbo,...    Sugars,'ObsNames',Name) cereal.Properties.VarDescription = Variables(4:10,2);

Cree una matriz de DataSet a partir de una única variable de espacio de trabajo con varias columnas, designando nombres de variables para cada columna:

load cities categories = cellstr(categories); cities = dataset({ratings,categories{:}},...    'ObsNames',cellstr(names))

Cargue datos desde un archivo de texto o de hoja de cálculo

patients = dataset('File','hospital.dat',...    'Delimiter',',','ReadObsNames',true) patients2 = dataset('XLSFile','hospital.xls',...    'ReadObsNames',true)
  1. Cargue los datos del paciente del archivo CSV y almacene la información en una matriz con los nombres de observación dados por la primera columna de los datos (identificación del paciente):hospital.datdataset

    patients = dataset('file','hospital.dat', ...              'format','%s%s%s%f%f%f%f%f%f%f%f%f', ...              'Delimiter',',','ReadObsNames',true);  

    También puede cargar los datos sin especificar un formato. creará automáticamente variables que son matrices o matrices de celdas de vectores de caracteres, dependiendo del contenido del archivo:datasetdatasetdouble

    patients = dataset('file','hospital.dat',...                    'delimiter',',',...                    'ReadObsNames',true);

  2. Haga la variable nominal {0, 1}, y cambie las etiquetas a y:smoke'No''Yes'

    patients.smoke = nominal(patients.smoke,{'No','Yes'}); 
  3. Agregue nuevos niveles como marcadores de posición para historias más detalladas de fumadores:smoke

    patients.smoke = addlevels(patients.smoke,...                  {'0-5 Years','5-10 Years','LongTerm'}); 
  4. Suponiendo que los no fumadores nunca han fumado, vuelva a etiquetar el nivel:'No'

    patients.smoke = setlabels(patients.smoke,'Never','No'); 
  5. Suelte el nivel no diferenciado de:'Yes'smoke

    patients.smoke = droplevels(patients.smoke,'Yes');  Warning: OLDLEVELS contains categorical levels that  were present in A, caused some array elements to have  undefined levels.

    Tenga en cuenta que los fumadores ahora tienen un nivel indefinido.

  6. Fije a cada fumador a uno de los nuevos niveles, por nombre de la observación:

    patients.smoke('YPL-320') = '5-10 Years';

Introducido en R2007a