writetable
Escribir una tabla en un archivo
Descripción
writetable(
escribe la tabla T
)T
en un archivo de texto delimitado por comas. El nombre de archivo es el nombre de variable del área de trabajo de la tabla, seguido de la extensión .txt
. Si writetable
no puede construir el nombre de archivo a partir del nombre de la tabla de salida, escribe en el archivo table.txt
.
Para archivos de texto y hojas de cálculo, cada columna de cada variable en T se convierte en una columna en el archivo de salida. Los nombres de las variables de T
se convierten en encabezados de columna en la primera línea del archivo.
Para los archivos XML, cada columna de T
se convierte en un nodo XML en el archivo de salida. Los nombres de las variables de T
se convierten en los nombres de los nodos de elementos en el archivo XML de salida.
writetable(
escribe en un archivo con el nombre y la extensión especificados por T
,filename
)filename
.
writetable
determina el formato de archivo a partir de la extensión especificada. La extensión debe ser una de las siguientes:
.txt
,.dat
, o.csv
para los archivos de texto delimitado.xls
,.xlsm
o.xlsx
para los archivos de hoja de cálculo de Excel®.xlsb
para hojas de cálculo de Excel compatibles con sistemas con Excel para Windows®.xml
para archivos de lenguaje de marcado extensible (XML)
writetable(___,
escribe una tabla en un archivo con opciones adicionales especificado por uno o más argumentos de par Name,Value
)Name,Value
y puede incluir cualquiera de los argumentos de entrada de las sintaxis anteriores.
Por ejemplo, puede especificar si desea escribir los nombres de las variables como encabezados de columna en el archivo de salida.
Ejemplos
Cree una tabla.
T = table(['M';'F';'M'],[45 45;41 32;40 34],... {'NY';'CA';'MA'},[true;false;false])
T=3×4 table
Var1 Var2 Var3 Var4
____ ________ ______ _____
M 45 45 {'NY'} true
F 41 32 {'CA'} false
M 40 34 {'MA'} false
Escriba la tabla en un archivo de texto delimitado por comas y muestre el contenido del archivo.
writetable(T)
writetable
genera como resultado un archivo de texto llamado T.txt
.
type 'T.txt'
Var1,Var2_1,Var2_2,Var3,Var4 M,45,45,NY,1 F,41,32,CA,0 M,40,34,MA,0
writetable
añade un sufijo único al nombre de la variable, Var2
, encima de las dos columnas de datos correspondientes.
Cree una tabla.
T = table(['M';'F';'M'],[45 45;41 32;40 34],... {'NY';'CA';'MA'},[true;false;false])
T=3×4 table
Var1 Var2 Var3 Var4
____ ________ ______ _____
M 45 45 {'NY'} true
F 41 32 {'CA'} false
M 40 34 {'MA'} false
Escriba la tabla en un archivo de texto delimitado por espacios llamado myData.txt
y muestre el contenido del archivo.
writetable(T,'myData.txt','Delimiter',' ') type 'myData.txt'
Var1 Var2_1 Var2_2 Var3 Var4 M 45 45 NY 1 F 41 32 CA 0 M 40 34 MA 0
writetable
añade un sufijo único al nombre de la variable, Var2
, encima de las dos columnas de datos correspondientes.
Cree una tabla.
LastName = {'Smith';'Johnson';'Williams';'Jones';'Brown'}; Age = [38;43;38;40;49]; Height = [71;69;64;67;64]; Weight = [176;163;131;133;119]; BloodPressure = [124 93; 109 77; 125 83; 117 75; 122 80]; T = table(Age,Height,Weight,BloodPressure,... 'RowNames',LastName)
T=5×4 table
Age Height Weight BloodPressure
___ ______ ______ _____________
Smith 38 71 176 124 93
Johnson 43 69 163 109 77
Williams 38 64 131 125 83
Jones 40 67 133 117 75
Brown 49 64 119 122 80
Escriba la tabla, T
, en un archivo de texto delimitado por comas, llamado myPatientData.dat
, y muestre el contenido del archivo.
writetable(T,'myPatientData.dat','WriteRowNames',true) type 'myPatientData.dat'
Row,Age,Height,Weight,BloodPressure_1,BloodPressure_2 Smith,38,71,176,124,93 Johnson,43,69,163,109,77 Williams,38,64,131,125,83 Jones,40,67,133,117,75 Brown,49,64,119,122,80
La primera columna, que contiene los nombres de las filas, tiene el encabezado de columna, Row
. Este es el nombre de la primera dimensión de la tabla de la propiedad T.Properties.DimensionNames
.
Convierta las fechas en inglés de una tabla a alemán y escriba la tabla en un archivo.
Cree una tabla que contenga un arreglo datetime
con fechas en inglés. Cree vectores columna de datos numéricos para acompañar las fechas.
D = datetime({'01-Jan-2014';'01-Feb-2014';'01-Mar-2014'}); D.Format = 'dd MMMM yyyy'; X1 = [20.2;21.6;20.7]; X2 = [100.5;102.7;99.8]; T = table(D,X1,X2)
T = D X1 X2 ________________ ____ _____ 01 January 2014 20.2 100.5 01 February 2014 21.6 102.7 01 March 2014 20.7 99.8
Escriba la tabla en un archivo de texto. Especifique el alemán como idioma de las fechas utilizando el argumento de par nombre-valor DateLocale
y muestre las fechas en el archivo de texto.
writetable(T,'myfile.txt','DateLocale','de_DE'); type myfile.txt
D,X1,X2 01 Januar 2014,20.2,100.5 01 Februar 2014,21.6,102.7 01 März 2014,20.7,99.8
Cuando sus datos contengan caracteres en otros idiomas o idiomas que no sean ASCII, utilice el parámetro de codificación para asegurarse de que el archivo se escriba correctamente. Primero, cargue la tabla proporcionada en el área de trabajo. A continuación, escriba la tabla en un archivo usando la codificación predeterminada. Finalmente, escriba la tabla utilizando la codificación 'UTF-8'
y examine el resultado.
Cargue Table_Japanese_Characters.mat
, que contiene una tabla T. A continuación, se muestra una vista previa de la tabla. Tenga en cuenta que la tabla contiene dos columnas con caracteres japoneses.
load('Table_Japanese_Characters.mat')
Escriba la tabla en un archivo. La función writetable
utiliza la codificación predeterminada de su sistema para escribir archivos. Los resultados pueden variar según la configuración de su sistema. Para examinar el archivo resultante, vuelva a leer la tabla en el área de trabajo con la función readtable
. Tenga en cuenta que writetable
no ha escrito correctamente las columnas (1 y 3) que contenían caracteres en otros idiomas.
writetable(T,'myTable.txt') myTable = readtable('myTable.txt')
myTable=9×3 table
A B C
_____ ______ _______
'' 458.98 ''
'' 530.14 ''
'' 289.4 ''
'' 434.81 ''
'' 186.44 ''
'' 0 ''
'' 231.29 ''
'' 311.86 ''
'' 239.93 ''
Si su tabla contiene caracteres en otros idiomas o idiomas que no son ASCII, debe utilizar el parámetro 'Encoding'
para asegurarse de que sus datos se escriban correctamente. Establezca 'Encoding'
en 'UTF-8'
, que admite una amplia gama de caracteres en otros idiomas e idiomas que no son ASCII. Para examinar el archivo resultante, vuelva a leer la tabla en el área de trabajo con la función readtable
. Con el parámetro de codificación correcto, la función writetable
puede escribir los datos correctamente.
writetable(T,'myTable_UTF8.txt','Encoding','UTF-8') myTable_UTF8 = readtable('myTable_UTF8.txt','Encoding','UTF-8')
myTable_UTF8=9×3 table
A B C
_______ ______ ___________
'南西' 458.98 '冬の嵐'
'南東' 530.14 '冬の嵐'
'南東' 289.4 '冬の嵐'
'西' 434.81 '機器の故障'
'中西部' 186.44 '深刻な嵐'
'西' 0 '攻撃'
'西' 231.29 '機器の故障'
'西' 311.86 '機器の故障'
'北東' 239.93 '火災'
Cree una tabla.
T = table(['M';'F';'M'],[45;41;36],... {'New York, NY';'San Diego, CA';'Boston, MA'},[true;false;false])
T=3×4 table
Var1 Var2 Var3 Var4
____ ____ _________________ _____
M 45 {'New York, NY' } true
F 41 {'San Diego, CA'} false
M 36 {'Boston, MA' } false
Escriba la tabla en un archivo de texto separado por comas llamado myData.csv
y visualice el contenido del archivo. Utilice el argumento de par nombre-valor 'QuoteStrings'
para asegurarse de que las comas de la tercera columna no se traten como delimitadores.
writetable(T,'myData.csv','Delimiter',',','QuoteStrings','all') type 'myData.csv'
Var1,Var2,Var3,Var4 "M",45,"New York, NY",1 "F",41,"San Diego, CA",0 "M",36,"Boston, MA",0
Cree una tabla.
T = table(['M';'F';'M'],[45 45;41 32;40 34],... {'NY';'CA';'MA'},[true;false;false])
T=3×4 table
Var1 Var2 Var3 Var4
____ ________ ______ _____
M 45 45 {'NY'} true
F 41 32 {'CA'} false
M 40 34 {'MA'} false
Escriba la tabla en una hoja de cálculo llamada myData.xls
. Incluya los datos de la primera hoja en la región de 5 por 5 con esquinas en B2
y F6
. Puede cambiar la hoja de cálculo en la que desea escribir especificando el índice correspondiente a la hoja de cálculo.
writetable(T,'myData.xls','Sheet',1,'Range','B2:F6')
Excel® rellena la fila de la hoja de cálculo de B6
a F6
con #N/A
, ya que el rango especificado es mayor que el tamaño de la tabla de entrada T
.
Puede escribir datos tabulares que contengan nombres de variables con cualquier carácter, incluidos espacios y caracteres no ASCII. Cree una tabla con nombres de variables arbitrarios y escríbala en un archivo de texto. A continuación, vuelva a leer los datos tabulares conservando los nombres de variables originales.
Cree una tabla que contenga tres variables con nombres de variables arbitrarios. El primer y tercer nombre de variable contienen espacios y caracteres no ASCII.
LastName = {'Sanchez';'Johnson';'Li';'Diaz';'Brown'}; Age = [38;43;38;40;49]; Smoker = logical([1;0;1;0;1]); varNames = {'Last Name','Age','Smoker (1 or 0)'}; T = table(LastName,Age,Smoker,'VariableNames',varNames)
T=5×3 table
Last Name Age Smoker (1 or 0)
___________ ___ _______________
{'Sanchez'} 38 true
{'Johnson'} 43 false
{'Li' } 38 true
{'Diaz' } 40 false
{'Brown' } 49 true
Escriba los datos en el archivo 'sampletable.txt'
.
writetable(T,'sampletable.txt')
Vuelva a leer los datos tabulares con readtable
. De forma predeterminada, MATLAB® convierte cualquier nombre de variable que incluya espacios y caracteres no ASCII en identificadores válidos de MATLAB®. Por ejemplo, MATLAB® convierte los nombres de variables 'Last Name'
a 'LastName'
y 'Smoker (1 or 0)'
a 'Smoker_1or0_'
. Para leer los datos tabulares conservando los nombres de las variables, establezca el parámetro 'VariableNamingRule'
en preserve
.
T_preserve = readtable('sampletable.txt',"VariableNamingRule","preserve")
T_preserve=5×3 table
Last Name Age Smoker (1 or 0)
___________ ___ _______________
{'Sanchez'} 38 1
{'Johnson'} 43 0
{'Li' } 38 1
{'Diaz' } 40 0
{'Brown' } 49 1
Añada datos como una nueva fila al final de una tabla con datos existentes.
Cree una tabla.
InsectSpecies = {'Monarch Butterfly';'Seven-spot Ladybird';'Orchid Mantis';... 'American Bumblebee';'Blue Dasher Dragonfly'}; InsectOrder = {'Lepidoptera';'Coleoptera';'Mantodea';'Hymenoptera';'Odonata'}; InsectFamily = {'Nymphalidae';'Coccinellidae';'Hymenopodidae';... 'Apidae';'Libellulidae'}; PredatoryInsect = logical([0;1;1;0;1]); T = table(InsectSpecies,InsectOrder,InsectFamily,PredatoryInsect)
T=5×4 table
InsectSpecies InsectOrder InsectFamily PredatoryInsect
_________________________ _______________ _________________ _______________
{'Monarch Butterfly' } {'Lepidoptera'} {'Nymphalidae' } false
{'Seven-spot Ladybird' } {'Coleoptera' } {'Coccinellidae'} true
{'Orchid Mantis' } {'Mantodea' } {'Hymenopodidae'} true
{'American Bumblebee' } {'Hymenoptera'} {'Apidae' } false
{'Blue Dasher Dragonfly'} {'Odonata' } {'Libellulidae' } true
Escriba la tabla T en un archivo de texto llamado InsectCollection.txt
.
writetable(T,'InsectCollection.txt','WriteRowNames',true)
Cree nuevos datos en forma de tabla para añadirlos a la tabla existente.
newInsect = table({'Red-banded leafhopper'},{'Hemiptera'},{'Cicadellidae'},logical([0]))
newInsect=1×4 table
Var1 Var2 Var3 Var4
_________________________ _____________ ________________ _____
{'Red-banded leafhopper'} {'Hemiptera'} {'Cicadellidae'} false
Añada newInsect
a InsectCollection.txt
usando el argumento de par nombre-valor 'WriteMode','Append'
.
writetable(newInsect,'InsectCollection.txt','WriteMode','Append',... 'WriteVariableNames',false,'WriteRowNames',true)
Vuelva a leer la tabla en el área de trabajo.
readtable('InsectCollection.txt')
ans=6×4 table
InsectSpecies InsectOrder InsectFamily PredatoryInsect
_________________________ _______________ _________________ _______________
{'Monarch Butterfly' } {'Lepidoptera'} {'Nymphalidae' } 0
{'Seven-spot Ladybird' } {'Coleoptera' } {'Coccinellidae'} 1
{'Orchid Mantis' } {'Mantodea' } {'Hymenopodidae'} 1
{'American Bumblebee' } {'Hymenoptera'} {'Apidae' } 0
{'Blue Dasher Dragonfly'} {'Odonata' } {'Libellulidae' } 1
{'Red-banded leafhopper'} {'Hemiptera' } {'Cicadellidae' } 0
Conserve las anchuras de columna existentes de un archivo de hoja de cálculo al añadir datos al final del archivo.
Cree variables de área de trabajo con datos de texto y, a continuación, cree una tabla como contenedor para las variables.
state = {'Massachussetts';'California';'Minnesota';'Virginia'}; stateFlower = {'Trailing arbutus';'Golden Poppy';'Pink and White Lady''s Slipper';'Flowering dogwood'}; stateBird = {'Black-capped chickadee';'California Valley Quail';'Common Loon';'Cardinal'}; data = table(state,stateFlower,stateBird);
Escriba la tabla en un archivo de hoja de cálculo llamado states_funfacts.xlsx
.
writetable(data,'state_funfacts.xlsx')
Cree otra tabla de datos de texto.
t = table({'Maryland';'New York'},{'Black-eyed Susan';'Rose'},{'Baltimore oriole';'Eastern bluebird'});
Añada la tabla al archivo de hoja de cálculo existente. Especifique 'AutoFitWidth'
como false
para conservar las anchuras de columna existentes de la hoja de cálculo.
writetable(t,'state_funfacts.xlsx',"WriteMode","append","AutoFitWidth",false);
Si especifica 'AutoFitWidth'
como true
en lugar de false
, writetable
ajustará las anchuras de las columnas de la hoja de cálculo para que se ajusten a los datos que se escribirán en lugar de conservar las anchuras de las columnas originales.
Edite filas dentro de un archivo de hoja de cálculo existente sin conservar el formato de las celdas de la hoja de cálculo.
El archivo de hoja de cálculo student_grades.xlsx
contiene celdas formateadas. Todas las celdas tienen rellenado de color y bordes, y las celdas del encabezado tienen fuente negrita.
Cree una tabla con texto y datos numéricos.
Student = {'Mary';'John'}; Grade = [95;87]; t = table(Student,Grade)
t=2×2 table
Student Grade
________ _____
{'Mary'} 95
{'John'} 87
Actualice el archivo de hoja de cálculo existente con la tabla de datos de entrada. Especifique 'PreserveFormat'
como false
para ignorar el formato de las celdas existente del archivo de hoja de cálculo. Al hacer esto, student_grades.xlsx
se modifica de la siguiente manera.
writetable(t,'student_grades.xlsx','PreserveFormat',false);
Si especifica 'PreserveFormat'
como true
en lugar de false
cuando escriba los datos en el archivo de hoja de cálculo existente, writetable
conservará el formato de las celdas existente de la hoja de cálculo.
writetable(t,'student_grades.xlsx','PreserveFormat',true);
Cree una tabla de datos y escríbala en un archivo XML. Personalice cómo writetable
escribe los datos de la tabla en el archivo XML especificando argumentos de par nombre-valor adicionales.
Cree una tabla de datos.
InsectSpecies = {'Monarch Butterfly';'Seven-spot Ladybird';'Orchid Mantis'; ... 'American Bumblebee';'Blue Dasher Dragonfly'}; InsectOrder = {'Lepidoptera';'Coleoptera';'Mantodea';'Hymenoptera';'Odonata'}; InsectFamily = {'Nymphalidae';'Coccinellidae';'Hymenopodidae'; ... 'Apidae';'Libellulidae'}; PredatoryInsect = logical([0;1;1;0;1]); T = table(InsectOrder,InsectFamily,PredatoryInsect); T.Properties.RowNames = InsectSpecies; head(T,5)
InsectOrder InsectFamily PredatoryInsect _______________ _________________ _______________ Monarch Butterfly {'Lepidoptera'} {'Nymphalidae' } false Seven-spot Ladybird {'Coleoptera' } {'Coccinellidae'} true Orchid Mantis {'Mantodea' } {'Hymenopodidae'} true American Bumblebee {'Hymenoptera'} {'Apidae' } false Blue Dasher Dragonfly {'Odonata' } {'Libellulidae' } true
Escriba la tabla T
en un archivo XML llamado InsectCollection.xml
. Especifique 'WriteRowNames'
como true
para escribir los nombres de las filas de la tabla. Los nombres de fila aparecen como campos que pertenecen al nodo del elemento Row
en el archivo XML de salida.
Personalice los nombres de los nodos en el archivo XML especificando 'Insect'
como el valor de 'RowNodeName'
.
writetable(T,'InsectCollection.xml',"WriteRowNames",false,"RowNodeName","Insect")
Muestre el contenido del archivo InsectCollection.xml
.
type InsectCollection.xml
<?xml version="1.0" encoding="UTF-8"?> <table> <Insect> <InsectOrder>Lepidoptera</InsectOrder> <InsectFamily>Nymphalidae</InsectFamily> <PredatoryInsect>false</PredatoryInsect> </Insect> <Insect> <InsectOrder>Coleoptera</InsectOrder> <InsectFamily>Coccinellidae</InsectFamily> <PredatoryInsect>true</PredatoryInsect> </Insect> <Insect> <InsectOrder>Mantodea</InsectOrder> <InsectFamily>Hymenopodidae</InsectFamily> <PredatoryInsect>true</PredatoryInsect> </Insect> <Insect> <InsectOrder>Hymenoptera</InsectOrder> <InsectFamily>Apidae</InsectFamily> <PredatoryInsect>false</PredatoryInsect> </Insect> <Insect> <InsectOrder>Odonata</InsectOrder> <InsectFamily>Libellulidae</InsectFamily> <PredatoryInsect>true</PredatoryInsect> </Insect> </table>
Si no especifica WriteRowNames
como true
, writetable
omite la escritura de los nombres de fila de la tabla en el archivo.
Argumentos de entrada
Datos de entrada, especificados como una tabla.
Nombre de archivo, especificado como vector de caracteres o escalar de cadena.
En función de la ubicación en la que está escribiendo, filename
puede tomar una de estas formas.
Ubicación | Forma | ||||||||
---|---|---|---|---|---|---|---|---|---|
Carpeta actual | Para escribir en la carpeta actual, especifique el nombre del archivo en Ejemplo: | ||||||||
Otras carpetas | Para escribir en una carpeta distinta a la carpeta actual, especifique el nombre de la ruta completa o relativa en Ejemplo: Ejemplo: | ||||||||
Ubicación remota | Para guardar archivos en una ubicación remota,
Según la ubicación remota,
Para obtener más información, consulte Trabajar con datos remotos. Ejemplo: |
Si
filename
incluye la extensión del archivo, la función de escritura determina el formato del archivo desde la extensión. De lo contrario, la función de escritura crea un archivo de texto separado por comas y añade la extensión.txt
. De manera alternativa, puede especificarfilename
sin la extensión del archivo y, después, incluir los argumentos de par nombre-valor'FileType'
para indicar el tipo de archivo.
Si
filename
no existe, la función de escritura crea el archivo.Si
filename
es el nombre de un archivo de texto existente, la función de escritura sobrescribe el archivo.Si
filename
es el nombre de un archivo de hoja de cálculo existente, la función de escritura escribe los datos en la ubicación especificada, pero no sobrescribe ningún valor fuera del intervalo de los datos de entrada.
Tipos de datos: char
| string
Argumentos de par nombre-valor
Especifique pares opcionales de argumentos como Name1=Value1,...,NameN=ValueN
, donde Name
es el nombre del argumento y Value
es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de otros argumentos, pero el orden de los pares no importa.
En las versiones anteriores a R2021a, utilice comas para separar cada nombre y valor, y encierre Name
entre comillas.
Ejemplo: 'WriteVariableNames',false
indica que los nombres de variable no deben incluirse como la primera fila del archivo de salida.
Todos los tipos de archivos admitidos
Indicador para escribir nombres de filas, especificado como el par separado por comas que consta de 'WriteRowNames'
y false
o true
.
Indicador | Comportamiento |
---|---|
|
|
| Para archivos de texto y hojas de cálculo, Si los indicadores lógicos Para los archivos XML, |
Configuración local para escribir fechas, especificada como el par separado por comas que consta de 'DateLocale'
y un vector de caracteres o un escalar de cadena. Cuando escriba valores datetime
en el archivo, use DateLocale
para especificar la configuración local en la que writetable
debería escribir nombres de meses y días de la semana y abreviaturas. El vector de caracteres o cadena toma la forma
, donde xx
_YY
xx
es un código ISO 639-1 de dos letras minúsculas que indica un idioma e YY
es un código ISO 3166-1 alpha-2 de dos letras mayúsculas que indica un país. Para ver una lista de valores habituales para la configuración local, consulte el argumento de par nombre-valor Locale
para la función datetime
.
La función de escritura ignora el valor del parámetro 'DateLocale'
siempre que las fechas se puedan escribir como fechas con formato de Excel.
Ejemplo: 'DateLocale','ja_JP'
Tipos de datos: char
| string
Tipo de archivo, especificado como el par separado por comas que consta de 'FileType'
y un vector de caracteres o cadena que contiene 'text'
, 'spreadsheet'
o 'xml'
.
El par nombre-valor 'FileType'
debe usarse con el argumento de entrada filename
. No es necesario especificar el argumento de par nombre-valor 'FileType'
si el argumento de entrada filename
incluye una extensión de archivo estándar. La función de escritura reconoce las siguientes extensiones de archivo estándar:
.txt
,.dat
, o.csv
para los archivos de texto delimitado.xls
,.xlsm
o.xlsx
para los archivos de hoja de cálculo de Excel.xlsb
para hojas de cálculo de Excel compatibles con sistemas con Excel para Windows.xml
para archivos XML.
Ejemplo: 'FileType','spreadsheet'
Tipos de datos: char
| string
Archivos de texto y de hoja de cálculo
Indicador para escribir nombres de variables como encabezados de columna, especificados como el par separado por comas que consta de 'WriteVariableNames'
y true
o false
.
Indicador | Comportamiento |
---|---|
| La función de escritura incluye nombres de variables como encabezados de columna de la salida. Se trata del comportamiento predeterminado. |
| La función de escritura no incluye nombres de variables en la salida. |
Modo de escritura, especificado como el par separado por comas que consta de 'WriteMode'
y un vector de caracteres o un escalar de cadena. Seleccione un modo de escritura en función del tipo de archivo.
Tipo de archivo | Modo de escritura |
---|---|
Archivos de texto |
Si el archivo que ha especificado no existe, la función de escritura crea un archivo nuevo y escribe datos en él. |
Archivos de hoja de cálculo |
|
Cuando
WriteVariableNames
se establece entrue
, la función de escritura no admite el modo de escritura'append'
.Para archivos de hoja de cálculo:
Cuando el modo de escritura es
'append'
, la función de escritura no admite el parámetroRange
.Si el archivo especificado no existe, la función de escritura realiza las mismas acciones que
'replacefile'
.
Ejemplo: 'WriteMode','append'
Tipos de datos: char
| string
Solo texto y XML
Esquema de codificación de caracteres asociado al archivo, especificado como el par separado por comas que consta de 'Encoding'
y 'system'
o un nombre de esquema de codificación de caracteres estándar. Cuando no se especifica ninguna codificación, la función de escritura utiliza UTF-8 para escribir en el archivo.
Ejemplo: 'Encoding','UTF-8'
utiliza UTF-8 como codificación.
Tipos de datos: char
| string
Solo archivos de texto
Carácter delimitador de campo, especificado como el par separado por comas que consta de 'Delimiter'
y un vector de caracteres o escalar de cadena que contiene uno de los siguientes especificadores:
Especificador | Delimitador de campo |
---|---|
| Coma. Se trata del comportamiento predeterminado. |
| Espacio |
| Tabulador |
| Punto y coma |
| Barra vertical |
Puede utilizar el par nombre-valor 'Delimiter'
solo para archivos de texto delimitado.
Ejemplo: 'Delimiter','space'
Tipos de datos: char
| string
Indicador para escribir texto entrecomillado, especificado como "minimal"
, "all"
o "none"
.
Si
QuoteStrings
es"minimal"
, la función encierra cualquier variable que contenga el delimitador, la nueva línea o el carácter de comillas dobles en caracteres de comillas dobles.Si
QuoteStrings
es"all"
, la función encierra todas las variables de texto, categóricas, de fecha/hora y duración en caracteres de comillas dobles.Si
QuoteStrings
es"none"
, la función no encierra variables en caracteres de comillas dobles.
Puede usar el argumento nombre-valor QuoteStrings
solo con archivos de texto delimitado.
Solo archivos de hoja de cálculo
Hoja de cálculo en la que desea escribir, especificada como el par separado por comas que consta de 'Sheet'
y un vector de caracteres o un escalar de cadena que contiene el nombre de la hoja de cálculo o un entero positivo que indica el índice de la hoja de cálculo. El nombre de la hoja de cálculo no puede contener dos puntos (:
). Para determinar los nombres de las hojas en un archivo de hoja de cálculo, utilice sheets = sheetnames(filename)
. Para obtener más información, consulte sheetnames
.
Especifique la hoja de cálculo en la que desea escribir por nombre o índice:
por nombre: si el nombre de hoja de cálculo especificado no existe en el archivo, la función de escritura añade una nueva hoja al final de la colección de hojas de cálculo.
por índice: si el índice de la hoja especificada es un índice mayor que el número de hojas de cálculo, la función de escritura anexa hojas vacías hasta que el número de hojas de cálculo del libro es igual al índice de hojas. La función de escritura también genera una advertencia que indica que se ha añadido una nueva hoja de cálculo.
Puede utilizar el par nombre-valor 'Sheet'
solo con archivos de hoja de cálculo.
Ejemplo: 'Sheet'
,2
Ejemplo: 'Sheet'
, 'MySheetName'
Tipos de datos: char
| string
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Parte rectangular de la hoja de cálculo en la que desea escribir, especificada como el par separado por comas que consta de 'Range'
y un vector de caracteres o un escalar de cadena con uno de los siguientes formatos:
Formato del valor de Range | Descripción |
---|---|
' |
Ejemplo: |
' |
Ejemplo:
|
El par nombre-valor 'Range'
puede usarse únicamente con archivos de Excel.
Ejemplo: 'Range'
, 'A1:F10'
Tipos de datos: char
| string
Indicador para inciar una instancia de Microsoft Excel para Windows al escribir datos de hoja de cálculo, especificado como el par separado por comas que consta de 'UseExcel'
y true
o false
.
Puede establecer el parámetro 'UseExcel'
en uno de estos valores:
true
: la función de escritura inicia una instancia de Microsoft Excel al escribir el archivo.false
: la función de escritura no inicia una instancia de Microsoft Excel al escribir el archivo. Al operar en este modo, la funcionalidad de escritura varía en la compatibilidad de los formatos de archivo y características interactivas, como fórmulas y macros.
UseExcel |
|
|
---|---|---|
Formatos de archivo compatibles |
|
|
Soporte para funcionalidades interactivas, como fórmulas y macros | Sí | No |
Al escribir en archivos de hojas de cálculo en plataformas de Windows, si desea iniciar una instancia de Microsoft Excel, establezca el parámetro 'UseExcel'
en true
.
UseExcel
no es compatible en entornos automatizados no interactivos.
Ajustar de manera automática el ancho de las columnas, especificado como true
o false
. Si especifica un valor de 0
o false
, writetable
no ajustará de manera automática los anchos de las columnas para que los datos quepan en las celdas.
Ejemplo: 'AutoFitWidth'
,0
Mantener el formato de las celdas de una hoja de cálculo existente, especificado como true
o false
. Si especifica false
, writetable
no mantendrá el formato de las celdas de la hoja de cálculo. El formato incluye elementos como fuentes, bordes de celda y celdas sombreadas con color.
Cuando escriba datos datetime
en un archivo de hoja de cálculo, debe establecer tanto 'PreserveFormat'
como el par nombre-valor 'UseExcel'
en true
para mantener el formato de las celdas existente. Si 'UseExcel'
se establece en false
y 'PreserveFormat'
se establece en true
, cuando escriba datos datetime
en el archivo, writetable
no mantendrá el formato de las celdas existente del archivo.
Ejemplo: 'PreserveFormat'
,false
Solo archivos XML
Sufijo de atributo, especificado como el par separado por comas que consta de 'AttributeSuffix'
y un vector de caracteres o un escalar de cadena que indica qué nombres de variables de la tabla de entrada se escribirán como atributos en el archivo XML de salida.
Por ejemplo, para un nombre de variable AttName_att
en la tabla de entrada, puede especificar 'AttributeSuffix','_att'
para indicar que 'AttName'
debe escribirse como un atributo en el archivo XML de salida.
Si no especifica
'AttributeSuffix'
,writetable
escribe de forma predeterminada variables con el sufijo'Attribute'
como atributos en el archivo XML de salida.Si el atributo especificado como valor de
'AttributeSuffix'
coincide con el sufijo añadido al nombre de la variable en la tabla de entrada, el sufijo se eliminará del nombre de la variable en el archivo XML de salida. Por ejemplo, si especifica'AttributeSuffix','_att'
, una variable en la tabla de entrada llamadaMyField_att
corresponderá al atributo llamadoMyField
en el archivo XML.
Ejemplo: 'AttributeSuffix','_att'
Nombre del nodo de fila XML, especificado como el par separado por comas que consta de 'RowNodeName'
y un vector de caracteres o un escalar de cadena que la función de escritura escribe como el nombre de nodo en el archivo XML de salida que corresponde a las filas de la tabla de entrada. Si no especifica RowNodeName
, la función de escritura escribe 'row'
como el nombre de los nodos de fila en la tabla de salida.
Ejemplo: 'TableNodeName','RootName'
Nombre del nodo raíz XML, especificado como el par separado por comas que consta de 'TableNodeName'
y un vector de caracteres o un escalar de cadena que la función de escritura escribe como el nombre del nodo raíz en el archivo XML de salida. Si no especifica TableNodeName
, la función de escritura escribe 'table'
como el nombre del nodo raíz en la tabla de salida.
Ejemplo: 'TableNodeName','RootName'
Limitaciones
writetable
no admite la escritura de tablas anidadas. Utilicesplitvars
en la tabla anidada para dividir las variables de varias columnas en variables de una sola columna antes de escribir.
Sugerencias
Creación de hojas vacías en archivos de hojas de cálculo: Cree una hoja vacía en un archivo de hoja de cálculo con
writetable
escribiendo una tabla vacía. Por ejemplo, cree una hoja vacía llamada'MySheetName'
.O cree tres hojas vacías llamadaswritetable(table(),'empty.xls','Sheet','MySheetName')
'Sheet1'
,'Sheet2'
y'Sheet3'
.writetable(table(),'empty.xls','Sheet',3)
Algoritmos
Si los indicadores lógicos
'WriteVariableNames'
y'WriteRowNames'
sontrue
, la funciónwritetable
utiliza el nombre de la primera dimensión de la propiedadT.Properties.DimensionNames
como encabezado de columna para la primera columna de la salida.Excel convierte los valores
Inf
en65535
. MATLAB® convierte los valores categóricosNaN
,NaT
y<undefined>
, y los valores de cadena<missing>
en celdas vacías.Para archivos de Excel,
writetable
escribe variablestable
que contienen arreglosdatetime
como fechas de Excel. Sitable
contiene arreglosdatetime
con años anteriores a 1900 o 1904,writetable
escribe las variables como texto. Para obtener más información sobre las fechas de Excel, consulte Diferencias entre el sistema de fechas 1900 y 1904 en Excel.Existen algunos casos en los que la función
writetable
crea un archivo que no representaT
con exactitud. Observará esto cuando utilicereadtable
para leer ese archivo. Es posible que la tabla resultante no tenga el mismo formato o contenido que la tabla original. Si es necesario guardar una tabla y recuperarla más adelante para que coincida de manera exacta con la tabla original, con los mismos datos y organización, guárdela como un archivo MAT.writetable
escribe una tabla inexacta en los casos siguientes:Al escribir en archivos de texto,
writetable
genera como resultado variables numéricas utilizando el formatolong g
y variables categóricas o de caracteres como caracteres sin entrecomillar.Para las variables que tienen más de una columna,
writetable
añade un identificador único al nombre de la variable para usarlo como encabezado de columna.Para las variables de salida que tienen más de dos dimensiones,
writetable
genera como resultado estas variables como bidimensionales donde las dimensiones finales se contraen. Por ejemplo,writetable
genera como resultado una variable de 4 por 3 por 2 como si su tamaño fuera de 4 por 6.Para las variables con un tipo de datos
cell
,writetable
genera como resultado el contenido de cada celda como una sola fila, en varios campos. Si el contenido no es numérico, lógico, de caracteres o categórico,writetable
genera como resultado un único campo vacío.
Historial de versiones
Introducido en R2013b
Consulte también
table
| readtable
| writecell
| writetimetable
| writematrix
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)