主要内容

writeall

将数据存储写入文件

描述

例子

writeall (dsoutputLocation从输入数据存储区写入数据ds中指定的位置输出文件outputLocation。输出文件的数量与数据存储引用的文件数量相同。

例子

writeall (dsoutputLocation名称,值用一个或多个名称-值对参数指定的附加选项写入数据。例如,您可以指定“OutputType”和文件扩展名,如“csv”指定文件的类型writeall创建。

例子

全部折叠

将一个数据存储写入磁盘,然后为写入的文件创建一个新的数据存储。这个过程对于保存工作或与同事共享数据存储非常有用。

对象的数据存储airlinesmall.csv数据集,处理“NA”值作为缺失的数据。只选择一年,航空公司变量。

数据存储(“airlinesmall.csv”);ds。TreatAsMissing =“NA”;ds。SelectedVariableNames = {“月”“年”“UniqueCarrier”};

预览数据存储。

预览(ds)
ans =8×3表月年UniqueCarrier  _____ ____ _____________ 1987 1987{“PS”}{“PS”}1987{“PS”}1987{“PS”}1987{“PS”}1987{“PS”}1987{“PS”}1987{“PS”}

将此数据存储保存到一个名为ExampleDataC: \磁盘。(您可以指定不同的写入位置,特别是如果您没有使用Windows®计算机。)指定“FolderLayout”作为“平”将数据存储文件直接放在目标文件夹中,而不创建子文件夹。

位置=“C: \ ExampleData”;writeall (ds、位置“Folderlayout”“平”

清晰的ds从您的工作目录。若要从磁盘恢复数据存储,请创建一个新的数据存储,该数据存储引用写入数据的同一文件夹。

清晰的dsDs2 =数据存储(位置);

将数据存储写入文件时,可以通过设置“FolderLayout”参数。从输入位置创建图像数据存储,然后将数据存储写入文件。接下来,复制文件夹布局,在输出位置写入文件。最后,将文件作为平面列表写入输出位置。

从该位置创建一个映像数据存储'输入C: \ \ ',里面有一些汽车和火车的图片:

imds = imageDatastore('输入C: \ \ '“IncludeSubfolders”,真正的);

这个文件夹结构只是一个例子。您可以在机器上使用包含图像文件的文件夹结构来尝试该功能。

检查文件夹属性的输入数据存储,其中包含到输入数据集的完全限定路径。

洛桑国际管理发展学院。文件夹
ans = 1×1单元格数组{'C:\input\'}

将数据存储写入输出位置“C: \ \输出”。的默认值“FolderLayout”参数是“复制”。因此,writeall对象中包含的所有文件夹文件夹属性,然后将文件写入相应的输出文件夹。

writeall (imd,“C: \ \输出”);

现在,将文件从数据存储写到输出位置“C: \ \输出”通过设置作为平面列表“FolderLayout”“平”。在这种情况下,writeall函数不保留输入文件夹布局,而是将所有文件写入一个平面输出位置。

writeall (imd,“C: \ \输出”“FolderLayout”“平”);

有关更多信息,请参见FolderLayout

您可以使用FilenamePrefix而且FilenameSuffix参数将文本添加到输出文件名的开头或结尾。从输入位置创建映像数据存储。将数据存储写到文件中,并在文件名的开头追加文本。然后再次写入数据存储,并在文件名的末尾追加文本。

从该位置创建一个映像数据存储'输入C: \ \ ',里面有一些汽车和火车的图片:

imds = imageDatastore('输入C: \ \ '“IncludeSubfolders”,真正的);

这个文件夹结构只是一个例子。您可以在机器上使用包含图像文件的文件夹结构来尝试该功能。

现在,将文件写入输出位置。指定的值FilenamePrefix作为“png_”将该文本附加到每个输出文件名的开头。

writeall (imd,“C: \ \输出”“FilenamePrefix”“png_”);

将文件写入不同的输出位置。指定的值FilenameSuffix作为“_image”将该文本附加到每个输出文件名的末尾。

writeall (imd,“C: \ output2 \”“FilenameSuffix”“_image”);

输入参数

全部折叠

输入数据存储。您可以使用这些数据存储作为writeall

您还可以使用这些数据存储writeall如果你提供“OutputFormat”“WriteFcn”名称-值对:

写入数据的文件夹位置,指定为字符向量或字符串标量。outputLocation可以指定完整路径或相对路径。

例子:outputLocation = '../../dir/data'

例子:outputLocation = "C:\Users\MyName\Desktop"

数据类型:字符|字符串

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来名字在报价。

例子:writeall (ds, outputLocation FolderLayout’,‘平’)

一般选择

全部折叠

输出文件格式,指定为由逗号分隔的对组成“OutputFormat”和字符向量或字符串标量。

根据输入数据存储的类型ds,为输出文件选择其中一个值。您可以为下面列出的任何表格式数据存储选择任何表格式输出格式。

输入数据存储

输出格式

TabulartextDatastoreSpreadsheetDatastoreParquetDatastore “三”“csv”“xlsx”“xls”“铺”,或“parq”
ImageDatastore “png”“jpg”“jpeg”气管无名动脉瘘管的' ',或“饮”
AudioDatastore “wav”“ogg”“flac”“mp4”,或“m4a格式”
FileDatastoreTransformedDatastoreCombinedDatastoreSequentialDatastore 支持所有输出格式。金宝app

对于某些输出格式,可以使用附加的名称-值对来细化写入操作。

输出格式 名称-值对

jpegjpg

“质量”

wavflac

“BitsPerSample”

mp4m4a格式

“比特率”

三种csv

“WriteVariableNames”

“分隔符”

编码

“QuoteStrings”

xlsxlsx

“表”

数据类型:字符|字符串

输出文件夹中文件的布局,指定为逗号分隔的对,由“FolderLayout”,要么“复制”“平”

  • “复制”- - -writeall函数将输入数据位置中包含的文件夹结构复制到指定的输出位置。输入数据位置包含文件夹属性。

  • “平”- - -writeall函数将所有文件从输入写入指定的输出文件夹,而不包含任何子文件夹。

数据类型:字符|字符串

文件名的前缀,指定为逗号分隔的对,由“FilenamePrefix”和字符向量或字符串标量。

writeall函数将指定的前缀添加到输出文件名中。例如,这段代码将今天的日期添加到数据存储中所有输出文件名的开头:

prefixText = string(日期时间(“今天”) writeall (imd,“C: \ myFolder”“FilenamePrefix”, prefixText);

数据类型:字符|字符串

文件名的后缀,指定为逗号分隔的对,由“FilenameSuffix”和字符向量或字符串标量。

writeall函数将指定的后缀添加到输出文件名中。例如,这段代码添加了描述性文本“jpeg_70per”到数据存储中所有输出文件名的末尾:

writeall (imd,“C: \ myFolder”“FilenameSuffix”“jpeg_70per”);

数据类型:字符|字符串

指示器要并行写入,指定为由逗号分隔的对组成“UseParallel”,要么真正的01).

默认情况下writeall串行写入。如果你设置UseParallel真正的,然后writeall将写入操作划分为单独的组,并在以下情况下并行运行组:

  • 安装并行计算工具箱™。

  • 存在一个开放的并行池,或者在并行首选项中启用了自动创建池。

否则,writeall无论for的值如何,都以串行方式写入UseParallel

writeall不支持通过本地线程金宝app并行写入。

请注意

不支持并行写入金宝appCombinedDatastore对象产生的数据存储变换适用于CombinedDatastore

数据类型:逻辑

自定义写入函数,指定为由逗号分隔的对组成“WriteFcn”和一个函数句柄。指定的函数负责创建输出文件。

您可以使用“WriteFcn”名称-值对参数以各种格式写入数据,即使writeall不直接支持输出格式。金宝app

函数签名

自定义写入函数必须接受至少三个输入参数,数据writeInfo,outputType

函数myWriteFcn(数据、writeInfo outputType)
在前三个必需输入之后,该函数还可以接受其他输入,例如名称-值对。

  • 数据属性的输出在数据存储上操作的方法。

  • writeInfo对象是类型吗matlab.io.datastore.WriteInfo使用表中列出的字段。

    描述 类型
    ReadInfo 的第二个输出方法 结构体
    SuggestedOutputName 满足位置和命名要求的完全限定的全局惟一文件名 字符串
    位置 传递给数据存储写入的位置参数 字符串
  • outputType例如,要写入的输出格式是什么“三”“csv”

例子函数

从数据存储写入parquet文件的写函数是:

函数myParquetWriteFcn(data, writeInfo, outputType)如果比较字符串(outputType“铺”) parquetwrite (writeInfo.SuggestedOutputName数据)结束结束
调用myParquetWriteFcn作为数据存储的写入功能ds,使用以下命令:
ds = parqueretdatastore (location);outputLocation =“C: / tmp / MyData”;writeall (ds, outputLocation“WriteFcn”, @myParquetWriteFcn);

数据类型:function_handle

选项jpegjpg输出

全部折叠

jpeg压缩文件的质量,指定为逗号分隔的对,由“质量”和范围[0,100]中的标量,其中0表示质量较低,压缩较高,100表示质量较高,压缩较低。

例子:“质量”,25岁

选项wavflac输出

全部折叠

每个样本的输出位数,由逗号分隔的对组成“BitsPerSample”而且8162432,或64

仅适用于FLAC文件816,或24支持每个样本位。金宝app

例子:“BitsPerSample”,32

选项mp4m4a格式输出

全部折叠

用于压缩音频文件的每秒千比特数(kbit/s),由逗号分隔的对组成“比特率”而且6496128160192256,或320。在窗户®7或之后,唯一有效的值是:96128160,192

一般来说,一个较大的比特率值产生更高的压缩质量。

例子:“比特率”,96年

选项三种csv输出

全部折叠

将变量名写入列标题的指示器,指定为逗号分隔的对,由“WriteVariableNames”,要么真正的

指示器

行为

真正的

写入函数包括变量名作为输出的列标题。这是默认行为。

写入函数在输出中不包括变量名。

字段分隔符字符,指定为逗号分隔的对,由“分隔符”和包含以下说明符之一的字符向量或字符串标量:

说明符

字段分隔符

”、“

“逗号”

逗号。这是默认行为。

' '

“空间”

空间

' \ t '

“标签”

选项卡

“;”

“半”

分号

“|”

“酒吧”

竖线

您可以使用“分隔符”仅用于分隔文本文件的名称-值对。

例子:“分隔符”、“空间”

数据类型:字符|字符串

与文件关联的字符编码方案,指定为逗号分隔的对,由“编码”而且“系统”或标准字符编码方案名称,如此表中的值之一。当您没有指定任何编码或将编码指定为“系统”,写入功能使用系统默认编码写入文件。

“繁体”

“iso - 8859 - 1”

“windows - 874”

“Big5-HKSCS”

“iso - 8859 - 2”

“windows - 949”

“CP949”

“iso - 8859 - 3”

“windows - 1250”

“EUC-KR”

“iso - 8859 - 4”

“windows - 1251”

“EUC-JP”

“iso - 8859 - 5”

“windows - 1252”

“EUC-TW”

“iso - 8859 - 6”

“windows - 1253”

“GB18030”

“iso - 8859 - 7”

“windows - 1254”

“GB2312”

“iso - 8859 - 8”

“windows - 1255”

“GBK”

“iso - 8859 - 9”

“windows - 1256”

“IBM866”

“iso - 8859 - 11”

“windows - 1257”

“KOI8-R”

“iso - 8859 - 13”

“windows - 1258”

“KOI8-U”

“iso - 8859 - 15”

“us - ascii”

“麦金塔”

“utf - 8”

“Shift_JIS”

例子:“utf - 8”

数据类型:字符|字符串

用于写入引用文本的指示器,指定为“最低”“所有”,或“没有”

  • 如果QuoteStrings“最低”,则该函数将包含分隔符、行结束符或双引号字符的任何变量包含在双引号字符中。

  • 如果QuoteStrings“所有”,则该函数将所有文本、类别、datetime和持续时间变量包含在双引号中。

  • 如果QuoteStrings“没有”,则函数不会用双引号将变量括起来。

您可以使用QuoteStrings仅对带分隔符的文本文件使用名称-值参数。

选项xlsxlsx输出

全部折叠

要写入的工作表,指定为逗号分隔的对,由“表”字符向量或包含工作表名称的字符串标量或指示工作表索引的正整数。工作表名称不能包含冒号().若要确定电子表格文件中工作表的名称,请使用Sheets = sheetnames(文件名)。有关更多信息,请参见sheetnames

按名称或索引指定要写入的工作表:

  • name -如果指定的表名在文件中不存在,则写入函数将在工作表集合的末尾添加一个新表。

  • index -如果指定的工作表索引大于工作表的数量,则写入函数将追加空工作表,直到工作簿中的工作表数量等于工作表索引。写入功能还生成一个警告,表明它已添加了一个新的工作表。

您可以使用“表”仅用于电子表格文件的名称-值对。

例子:“表”2

例子:“表”“MySheetName”

数据类型:字符|字符串|||int8|int16|int32|int64|uint8|uint16|uint32|uint64

扩展功能

版本历史

R2020a中引入