이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

write

검사 지점 생성을 위해 tall형 배열을 로컬 및 원격 위치에 쓰기

구문

write(location,tA)
write(filepattern,tA)
write(___,Name,Value)

설명

예제

write(location,tA)는 tall형 배열 tA의 값을 계산하고 location으로 지정된 폴더에 있는 파일에 배열을 씁니다. 데이터는 datastore(location)을 사용하여 다시 읽어 들이기에 적당한 효율적인 이진 형식으로 저장됩니다.

예제

write(filepattern,tA)filepattern의 파일 확장자를 사용하여 출력 형식을 결정합니다. filepattern은 파일을 쓸 폴더와 그다음에 와일드카드(*)를 포함하는 파일 이름이 연이어 오는 값을 포함해야 합니다. 와일드카드는 고유한 파일 이름을 생성하기 위해 1씩 커지는 번호를 나타냅니다. 예를 들면 write('folder/myfile_*.csv',tA)와 같습니다.

예제

write(___,Name,Value)는 위에 열거된 구문에 이름-값 쌍 인수를 하나 이상 추가 옵션으로 지정합니다. 예를 들어, 'FileType'과 유효한 파일 형식('mat', 'seq', 'text' 또는 'spreadsheet')으로 파일 형식을 지정할 수도 있고 데이터를 처리할 사용자 지정 쓰기 함수를 'WriteFcn'과 함수 핸들을 사용하여 지정할 수도 있습니다.

예제

모두 축소

디스크에 tall형 배열을 쓴 다음 생성된 파일에 대해 새 데이터저장소를 생성하여 이 tall형 배열을 복구합니다. 이 프로세스는 작업을 저장할 때나 동료에게 tall형 배열을 공유할 때 유용합니다.

airlinesmall.csv 데이터 세트에 대한 데이터저장소를 만듭니다. Year, Month, UniqueCarrier 변수만 선택하고 'NA' 값은 누락된 데이터로 처리합니다. 이 데이터저장소를 tall형 테이블로 변환합니다.

ds = datastore('airlinesmall.csv');
ds.TreatAsMissing = 'NA';
ds.SelectedVariableNames = {'Month','Year','UniqueCarrier'};
tt = tall(ds)
tt =

  M×3 tall table

    Month    Year    UniqueCarrier
    _____    ____    _____________

     10      1987        'PS'     
     10      1987        'PS'     
     10      1987        'PS'     
     10      1987        'PS'     
     10      1987        'PS'     
     10      1987        'PS'     
     10      1987        'PS'     
     10      1987        'PS'     
      :       :            :
      :       :            :

데이터를 연도 기준 내림차순으로 정렬한 다음 상위 25개 행을 추출합니다. 결과로 만들어진 tall형 테이블은 미평가된 것입니다.

tt_new = topkrows(tt,25,'Year')
tt_new =

  M×3 tall table

    Month    Year    UniqueCarrier
    _____    ____    _____________

      ?       ?            ?      
      ?       ?            ?      
      ?       ?            ?      
      :       :            :
      :       :            :

Preview deferred. Learn more.

C:\ 디스크에서 ExampleData라는 새 폴더에 결과를 저장합니다. (다른 쓰기 위치를 지정할 수도 있습니다. 특히 Windows® 컴퓨터를 사용하지 않는 경우 다른 쓰기 위치를 지정할 수 있습니다.) write 함수는 파일을 쓰기 전에 tall형 배열을 계산하므로 데이터를 저장하기 전에 gather 함수를 사용할 필요가 없습니다.

location = 'C:\ExampleData';
write(location,tt_new)
Writing tall data to folder C:\ExampleData
Evaluating tall expression using the Local MATLAB Session:
- Pass 1 of 1: Completed in 0.52 sec
Evaluation completed in 1.2 sec

작업 디렉터리에서 ttds를 지웁니다. 디스크에 쓴 tall형 테이블을 복구하려면 먼저 동일한 디렉터리를 참조하는 새 데이터저장소를 만들어야 합니다. 이 데이터저장소를 tall형 테이블로 변환합니다. 이 tall형 테이블은 데이터에 쓰이기 전에 먼저 계산되므로 이제 값의 미리 보기도 표시됩니다.

clear tt ds
ds2 = datastore(location);
tt2 = tall(ds2)
tt2 =

  M×3 tall table

    Month    Year    UniqueCarrier
    _____    ____    _____________

      1      2008        'WN'     
      1      2008        'WN'     
      1      2008        'WN'     
      1      2008        'WN'     
      1      2008        'WN'     
      1      2008        'WN'     
      1      2008        'WN'     
      1      2008        'WN'     
      :       :            :
      :       :            :

쓰나미의 위치, 강도, 원인에 대한 타임스탬프 데이터를 포함하는 tsunamis.xlsx 데이터 파일을 참조하는 tall형 테이블을 만듭니다.

ds = datastore('tsunamis.xlsx');
T = tall(ds)
T =

  Mx20 tall table

    Latitude    Longitude    Year    Month    Day    Hour    Minute    Second    ValidityCode           Validity            CauseCode         Cause          EarthquakeMagnitude         Country                 Location            MaxHeight    IidaMagnitude    Intensity    NumDeaths    DescDeaths
    ________    _________    ____    _____    ___    ____    ______    ______    ____________    _______________________    _________    ________________    ___________________    _________________    ________________________    _________    _____________    _________    _________    __________

      -3.8        128.3      1950     10       8       3       23       NaN           2          'questionable tsunami'         1        'Earthquake'                7.6            'INDONESIA'          'JAVA TRENCH, INDONESIA'       2.8            1.5            1.5          NaN          NaN    
      19.5         -156      1951      8      21      10       57       NaN           4          'definite tsunami'             1        'Earthquake'                6.9            'USA'                'HAWAII'                       3.6            1.8            NaN          NaN          NaN    
     -9.02       157.95      1951     12      22     NaN      NaN       NaN           2          'questionable tsunami'         6        'Volcano'                   NaN            'SOLOMON ISLANDS'    'KAVACHI'                        6            2.6            NaN          NaN          NaN    
     42.15       143.85      1952      3       4       1       22        41           4          'definite tsunami'             1        'Earthquake'                8.1            'JAPAN'              'SE. HOKKAIDO ISLAND'          6.5            2.7              2           33            1    
      19.1         -155      1952      3      17       3       58       NaN           4          'definite tsunami'             1        'Earthquake'                4.5            'USA'                'HAWAII'                         1            NaN            NaN          NaN          NaN    
      43.1        -82.4      1952      5       6     NaN      NaN       NaN           1          'very doubtful tsunami'        9        'Meteorological'            NaN            'USA'                'LAKE HURON, MI'              1.52            NaN            NaN          NaN          NaN    
     52.75        159.5      1952     11       4      16       58       NaN           4          'definite tsunami'             1        'Earthquake'                  9            'RUSSIA'             'KAMCHATKA'                     18            4.2              4         2236            3    
        50        156.5      1953      3      18     NaN      NaN       NaN           3          'probable tsunami'             1        'Earthquake'                5.8            'RUSSIA'             'N. KURIL ISLANDS'             1.5            0.6            NaN          NaN          NaN    
       :            :         :        :       :      :        :         :            :                     :                   :               :                     :                     :                       :                    :              :              :            :            :
       :            :         :        :       :      :        :         :            :                     :                   :               :                     :                     :                       :                    :              :              :            :            :

Year, Month, Day, Hour, MinuteSecond 변수를 하나의 datetime형 값으로 결합한 다음 해당 변수를 테이블에서 제거합니다. 누락된 데이터가 포함된 행을 제거합니다.

T.DateTime = datetime(T.Year, T.Month, T.Day, T.Hour, T.Minute, T.Second);
T(:,3:8) = [];
TT = rmmissing(T)
TT =

  Mx15 tall table

    Latitude    Longitude    ValidityCode         Validity         CauseCode              Cause               EarthquakeMagnitude      Country               Location             MaxHeight    IidaMagnitude    Intensity    NumDeaths    DescDeaths          DateTime      
    ________    _________    ____________    __________________    _________    __________________________    ___________________    ___________    __________________________    _________    _____________    _________    _________    __________    ____________________

     42.15        143.85          4          'definite tsunami'        1        'Earthquake'                          8.1            'JAPAN'        'SE. HOKKAIDO ISLAND'             6.5           2.7              2           33           1         04-Mar-1952 01:22:41
     58.34       -136.52          4          'definite tsunami'        3        'Earthquake and Landslide'            8.3            'USA'          'SE. ALASKA, AK'               524.26           4.6              5            5           1         10-Jul-1958 06:15:53
     -39.5         -74.5          4          'definite tsunami'        1        'Earthquake'                          9.5            'CHILE'        'CENTRAL CHILE'                    25           4.6              4         1260           3         22-May-1960 19:11:17
      -6.8         -80.7          4          'definite tsunami'        1        'Earthquake'                          6.8            'PERU'         'PERU'                              9           3.2            2.5           66           2         20-Nov-1960 22:01:56
      61.1        -147.5          4          'definite tsunami'        3        'Earthquake and Landslide'            9.2            'USA'          'PRINCE WILLIAM SOUND, AK'         67           6.1              5          221           3         28-Mar-1964 03:36:14
     38.65         139.2          4          'definite tsunami'        1        'Earthquake'                          7.5            'JAPAN'        'NW. HONSHU ISLAND'               5.8           2.7              2           26           1         16-Jun-1964 04:01:44
       0.2         119.8          4          'definite tsunami'        1        'Earthquake'                          7.8            'INDONESIA'    'BANDA SEA'                        10           3.3              3          200           3         14-Aug-1968 22:14:19
      -3.1         118.9          4          'definite tsunami'        1        'Earthquake'                          6.9            'INDONESIA'    'MAKASSAR STRAIT'                   4             2              2          600           3         23-Feb-1969 00:36:56
       :            :             :                  :                 :                    :                          :                  :                     :                     :              :              :            :            :                  :
       :            :             :                  :                 :                    :                          :                  :                     :                     :              :              :            :            :                  :

테이블을 Amazon S3® 저장소에 있는 원격 위치에 스프레드시트 파일로 씁니다. Amazon S3에서 데이터를 읽거나 쓰려면 계정의 자격 증명을 사용하여 AWS_ACCESS_KEY_ID 환경 변수와 AWS_SECRET_ACCESS_KEY 환경 변수를 설정해야 합니다. 자세한 내용은 원격 데이터로 작업하기 항목을 참조하십시오.

setenv('AWS_ACCESS_KEY_ID', 'YOUR_AWS_ACCESS_KEY_ID'); 
setenv('AWS_SECRET_ACCESS_KEY', 'YOUR_AWS_SECRET_ACCESS_KEY'); 

location = 's3://bucketname/preprocessedData/';
write(location, TT, 'FileType', 'spreadsheet')

데이터를 다시 읽어 들이려면 datastore를 사용하여 데이터가 저장되어 있는 원격 위치를 가리키십시오.

ds = datastore(location);
tt = tall(ds);

write가 직접 지원하지 않는 추가 형식(예: 이미지 파일)에 데이터를 쓰는 사용자 지정 쓰기 함수를 만들고 사용합니다.

toolbox/matlab/demos 폴더에 있는 모든 샘플 이미지를 참조하는 이미지 데이터저장소를 만듭니다. 선택한 이미지는 .jpg, .tif.png 확장자를 갖습니다. 데이터저장소를 tall형 셀형 배열로 변환합니다.

demoFolder = fullfile(matlabroot,'toolbox','matlab','demos');
ds = imageDatastore(demoFolder,'FileExtensions',{'.jpg' '.tif' '.png'});
T = tall(ds);

이미지 하나를 메모리로 불러 들이고 표시합니다.

I = gather(T(1));
Evaluating tall expression using the Local MATLAB Session:
- Pass 1 of 1: Completed in 3 sec
Evaluation completed in 3.2 sec
imshow(I{1},'InitialMagnification',30)

write는 이미지 파일을 직접 지원하지 않으므로 이미지를 다른 형식으로 쓰려면 파일 쓰기를 처리할 새로운 함수를 만들어야 합니다. 쓰기 함수는 write:로부터 다음과 같은 두 개의 입력값을 받습니다.

  • info는 현재 데이터 블록에 대한 정보가 담긴 필드를 포함하는 구조체입니다. 이러한 필드를 사용하여 고유한 파일 이름을 생성할 수도 있고 SuggestedFilename 필드를 사용하여 write가 제안하는 이름을 사용할 수도 있습니다.

  • data는 데이터저장소에서 read를 사용하여 가져온 현재 데이터 블록입니다.

함수 imageWriterwrite가 제안하는 파일 이름을 사용하고, imwrite를 사용하여 이미지 파일을 .jpg 파일로 디스크에 씁니다. 현재 작업 폴더에 이 함수를 저장합니다.

type imageWriter
function imageWriter(info, data)
  filename = info.SuggestedFilename;
  imwrite(data{:}, filename)
end

데이터저장소에 저장된 이미지를 C:\ 디스크의 exampleImages라는 새 폴더에 씁니다. (다른 위치를 사용할 수도 있습니다. 특히 Windows® 컴퓨터를 사용하지 않는 경우 다른 위치를 사용할 수 있습니다.) 'WriteFcn' 이름-값 쌍의 인수를 사용하여 imageWriter를 사용자 지정 쓰기 함수로 전달합니다.

location = 'C:\exampleImages\image_*.jpg';
write(location, T, 'WriteFcn', @imageWriter)
Writing tall data to folder C:\exampleImages
Evaluating tall expression using the Local MATLAB Session:
- Pass 1 of 1: Completed in 0.71 sec
Evaluation completed in 0.98 sec

쓰기 후 파일이 저장된 폴더의 내용을 표시합니다.

dir C:\exampleImages
.                   image_1_000001.jpg  image_3_000001.jpg  image_5_000001.jpg  
..                  image_2_000001.jpg  image_4_000001.jpg  image_6_000001.jpg  

동일 위치를 참조하는 데이터저장소를 만들어 이미지를 MATLAB®으로 다시 읽어옵니다.

ds = imageDatastore(location);
T = tall(ds)
T =

  6×1 tall cell array

    {1024×2048×3 uint8}
    { 650×600×3  uint8}
    {1024×2048×3 uint8}
    { 650×600×3  uint8}
    { 480×640×3  uint8}
    { 480×640×3  uint8}

입력 인수

모두 축소

데이터를 쓸 폴더 위치로, 문자형 벡터 또는 string형으로 지정됩니다. location은 전체 경로나 상대 경로일 수 있습니다. 지정되는 폴더는 다음 중 하나일 수 있습니다.

  • 기존의 빈 폴더

  • write가 만드는 새 폴더

데이터는 컴퓨터의 로컬 폴더에 쓰거나 HDFS™, Azure® 또는 Amazon S3™의 원격 위치에 쓸 수 있습니다. 원격 위치에서 데이터를 읽고 쓰는 방법은 원격 데이터로 작업하기 항목을 참조하십시오.

Hadoop®과 Apache Spark™에는 다음과 같은 사항을 추가적으로 고려해야 합니다.

  • 폴더를 로컬에서 사용할 수 없는 경우 폴더의 전체 경로는
    hdfs:///path_to_file 형식의 IRI(Internationalized Resource Identifier)여야 합니다.

  • HDFS에 쓰기 전에 HADOOP_HOME, HADOOP_PREFIX 또는 MATLAB_HADOOP_INSTALL 환경 변수를 Hadoop이 설치된 폴더로 설정해야 합니다.

  • Apache Spark에 쓰기 전에 SPARK_HOME 환경 변수를 Apache Spark가 설치된 폴더로 설정해야 합니다.

예: location = 'hdfs:///some/output/folder'

예: location = '../../dir/data'

예: location = 'C:\Users\MyName\Desktop'

데이터형: char | string

입력 배열로, tall형 배열로 지정됩니다.

파일 명명 패턴으로, string형이나 문자형 벡터로 지정됩니다. 파일 명명 패턴은 파일을 쓸 폴더와 그다음에 와일드카드(*)를 포함하는 파일 이름이 연이어 오는 값을 포함해야 합니다. write 함수는 파일 이름이 고유하게 지정되도록 와일드카드를 순차적인 수로 바꿉니다.

예: write('folder/data_*.txt',tA)는 tall형 배열 tAfolder 아래에 일련의 .txt 파일에 씁니다. 파일 이름은 data_1.txt, data_2.txt 등이 됩니다.

데이터형: char | string

이름-값 쌍의 인수

선택적으로 Name,Value 인수가 쉼표로 구분되어 지정됩니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. Name은 따옴표 안에 표시해야 합니다. Name1,Value1,...,NameN,ValueN과 같이 여러 개의 이름-값 쌍의 인수를 어떤 순서로든 지정할 수 있습니다.

예: write('C:\myData', tX, 'FileType', 'text', 'WriteVariableNames', false)는 tall형 배열 tXC:\myData에 텍스트 파일 모음으로 씁니다. 텍스트 파일에서는 변수 이름을 열 제목으로 사용하지 않습니다.

일반 옵션

모두 축소

파일 형식으로, 'FileType'과 함께 허용되는 파일 형식 'auto', 'mat', 'seq', 'text' 또는 'spreadsheet' 중 하나가 쉼표로 구분되어 지정됩니다.

'FileType' 이름-값 쌍을 location 인수와 함께 사용하여 어떤 형식의 파일을 쓸지 지정합니다. 기본적으로 write는 올바른 파일 형식을 자동으로 감지하려고 시도합니다. writelocation 또는 filepattern 인수의 확장자를 통해 파일 형식을 결정할 있는 경우에는'FileType' 이름-값 쌍의 인수를 지정할 필요가 없습니다. write는 다음 확장자를 통해 파일 형식을 결정할 수 있습니다.

  • .mat - MATLAB® 데이터 파일

  • .seq - 시퀀스 파일

  • .txt, .dat, .csv - 기호로 구분된 텍스트 파일

  • .xls, .xlsx, .xlsb, .xlsm, .xltx, .xltm - 스프레드시트 파일

예: write('C:\myData', tX, 'FileType', 'text')

사용자 지정 쓰기 함수로, 'WriteFcn'과 함께 함수 핸들이 쉼표로 구분되어 지정됩니다. 지정된 함수는 tA에서 데이터 블록을 받으며, 출력 파일을 만드는 일을 담당합니다. write가 출력 형식을 직접 지원하지 않더라도 'WriteFcn' 이름-값 쌍의 인수를 사용하여 데이터를 다양한 형식으로 쓸 수 있습니다.

함수 시그니처

사용자 지정 쓰기 함수는 두 개의 인수 infodata를 받아야 합니다.

function myWriter(info, data)

  • datatA의 데이터 블록을 포함합니다.

  • info는 데이터 블록에 대한 정보를 포함하는 필드를 갖는 구조체입니다. 이러한 필드를 사용하여 최종 위치 내에서 전역적으로 고유한 새 파일 이름을 만들 수 있습니다. 구조체는 다음과 같은 필드를 갖습니다.

    필드설명
    RequiredLocation임시 출력 폴더에 대한 정규화된 경로. 이 폴더에 쓴 파일만 최종 목적지로 복사됩니다. 파일은 하위 폴더에 있을 수 없습니다.
    RequiredFilePattern출력 파일 이름에 요구되는 파일 패턴. 이 필드는 폴더 이름만 지정된 경우에 비어 있습니다.
    SuggestedFilename위치 및 명명 요건을 충족하는 전역적으로 고유한 정규화된 파일 이름.
    PartitionIndex쓰려는 tall형 배열 파티션의 인덱스.
    NumPartitionstall형 배열의 파티션의 총 개수.
    BlockIndexInPartition파티션 내에서 현재 데이터 블록의 위치.
    IsFinalBlock현재 블록이 파티션의 마지막 블록이면 true.

파일 명명

출력 파일에 사용되는 파일 이름은 datastore가 나중에 파일을 다시 읽어 들이는 순서를 결정합니다. 파일의 순서가 중요한 경우, 제안된 이름이 파일의 순서를 보장하는 SuggestedFilename 필드를 사용하여 파일의 이름을 지정하는 것이 가장 좋습니다. 제안된 파일 이름을 사용하지 않을 거라면 사용자 지정 쓰기 함수가 전역적으로 고유하고 올바른 순서가 적용된 파일 이름을 만들어야 합니다. 파일 이름은 RequiredFilePattern에 정의된 명명 패턴을 따라야 합니다. Parallel Computing Toolbox™와 병렬로 실행되는 경우, 각 워커는 자체 로컬 파일에 쓰긴 하나 파일 이름은 워커 간 고유하고 올바른 순서를 가져야 합니다.

여러 파티션이 있는 배열

Parallel Computing Toolbox와 병렬로 배열에 대해 원활하게 계산을 실행하기 위해 tall형 배열을 파티션으로 나눌 수 있습니다. 각 파티션은 각각 메모리에 담기는 더 작은 블록으로 여전히 구성됩니다.

info는 파티션과 관련된 몇 개의 필드(PartitionIndex, NumPartitions, BlockIndexInPartition, IsFinalBlock)를 포함합니다. 이러한 필드는 단일 파일을 쓴 뒤에 거기에 추가할 때 유용하며, 이러한 작업은 여러 개의 블록으로 분할된 큰 파티션으로 이루어진 배열에 대해 자주 수행되는 작업입니다. 사용자 지정 쓰기 함수는 블록당 한 번 호출되며, 하나의 파티션 안에서는 동일한 워커에 의해 순서대로 블록들이 쓰여집니다. 단, 서로 다른 워커에 의해 서로 다른 파티션이 쓰여질 수 있습니다.

예제 함수

다음은 스프레드시트 파일을 쓰는 간단한 쓰기 함수입니다.

function dataWriter(info, data)
  filename = info.SuggestedFilename;
  writetable(data, filename, 'FileType', 'spreadsheet')
end
dataWriter를 일부 데이터 tt에 대한 쓰기 함수로서 호출하려면 다음 명령을 사용합니다.
tt = tall(array2table(rand(5000,3)));
location = '/tmp/MyData/tt_*.xlsx';
write(location, tt, 'WriteFcn', @dataWriter);
각 블록에 대해 dataWriter 함수는 info 구조체의 제안된 파일 이름을 사용하고 writetable을 호출하여 스프레드시트 파일을 씁니다. 제안된 파일 이름은 location 인수에 지정된 파일 명명 패턴을 참고합니다.

데이터형: function_handle

텍스트 또는 스프레드시트 파일

모두 축소

변수 이름을 열 제목으로 쓸 것인지 여부를 나타내는 표시자로, 'WriteVariableNames'와 함께 숫자형 또는 논리값 1(true) 또는 0(false)이 쉼표로 구분되어 지정됩니다.

표시자

동작

true

변수 이름이 출력값의 열 제목에 포함됩니다(디폴트 값).

false

변수 이름이 출력값에 포함되지 않습니다.

날짜 쓰기에 적용할 로케일로, 'DateLocale'과 함께 문자형 벡터 또는 string형 스칼라가 쉼표로 구분되어 지정됩니다. datetime 값을 파일에 쓸 때 write가 어떤 로케일을 사용해 월 이름, 요일 이름, 약어를 쓸지 지정하려면 DateLocale을 사용하십시오. 문자형 벡터 또는 string형은 xx_YY 형식을 사용합니다. 여기서 xx는 언어를 지정하는 ISO 639-1 두 자리 코드(소문자)이고, YY는 국가를 지정하는 ISO 3166-1 alpha-2 코드(대문자)입니다. 로케일에 일반적으로 사용되는 값 목록은 datetime 함수에 대한 Locale 이름-값 쌍의 인수를 참조하십시오.

Excel® 파일의 경우, writedatetime형 배열이 포함된 변수를 Excel 날짜로 쓰고 'DateLocale' 파라미터 값을 무시합니다. datetime 변수에 1900년 이전 또는 1904년 이전의 연도가 포함되어 있으면 write는 변수를 텍스트로 씁니다. Excel 날짜에 대한 자세한 내용은 Differences between the 1900 and the 1904 date system in Excel을 참조하십시오.

예: 'DateLocale','ja_JP' 또는 'DateLocale',"ja_JP"

데이터형: char | string

텍스트 파일에만 해당

모두 축소

필드 구분 기호 문자로, 'Delimiter'와 함께 다음 지정자 중 하나가 쉼표로 구분되어 지정됩니다.

지정자

필드 구분 기호

','

'comma'

쉼표(디폴트 값)

' '

'space'

공백

'\t'

'tab'

';'

'semi'

세미콜론

'|'

'bar'

세로 막대

'Delimiter' 이름-값 쌍의 인수는 구분된 텍스트 파일에만 사용할 수 있습니다.

예: 'Delimiter','space' 또는 'Delimiter',"space"

따옴표로 묶인 텍스트를 쓸 것인지 여부를 나타내는 표시자로, 'QuoteStrings'와 함께 false 또는 true가 쉼표로 구분되어 지정됩니다. 'QuoteStrings'true로 설정하면 write는 텍스트를 큰따옴표로 묶고, 해당 텍스트 내에 있는 모든 큰따옴표 문자를 두 개의 큰따옴표 문자로 바꿉니다. 예제는 CSV 파일에 따옴표로 묶인 텍스트 쓰기 항목을 참조하십시오.

'QuoteStrings' 이름-값 쌍의 인수는 구분된 텍스트 파일에만 사용할 수 있습니다.

파일과 연결된 문자 인코딩 체계로, 'Encoding'과 함께 'system' 또는 다음 표에 있는 표준 문자 인코딩 체계 이름이 쉼표로 구분되어 지정됩니다. 인코딩을 지정하지 않거나 인코딩을 'system'으로 지정할 경우, write 함수는 시스템 디폴트 인코딩을 사용하여 파일을 씁니다.

'Big5'

'ISO-8859-1'

'windows-847'

'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'

 

'Macintosh'

'UTF-8'

 

'Shift_JIS'

 

예: 'Encoding','system' 또는 'Encoding',"system"은 시스템 디폴트 인코딩을 사용합니다.

스프레드시트 파일만 해당

모두 축소

대상 워크시트로, 'Sheet'와 함께 워크시트 이름을 포함한 문자형 벡터나 string형 스칼라 또는 워크시트 인덱스를 나타내는 양의 정수가 쉼표로 구분되어 지정됩니다. 워크시트 이름에는 콜론(:)을 사용할 수 없습니다. 스프레트시트 파일에서 시트의 이름을 확인하려면 [status,sheets] = xlsfinfo(filename)을 사용하십시오.

시트가 존재하지 않으면 write가 워크시트 모음 끝에 새 시트를 추가합니다. 시트가 워크시트의 개수보다 큰 인덱스인 경우, 통합 문서에 있는 워크시트의 개수가 시트 인덱스와 같아질 때까지 write가 빈 시트를 추가합니다. 두 경우 모두, write는 새 워크시트가 추가되었음을 나타내는 경고를 생성합니다.

'Sheet' 이름-값 쌍의 인수는 스프레드시트 파일에만 사용할 수 있습니다.

예: 'Sheet',2

예: 'Sheet', 'MySheetName'

데이터형: char | string | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

제한 사항

경우에 따라 write(location, T, 'FileType', type)은 원래 배열 T를 부정확하게 나타내는 체크포인트 파일을 만듭니다. datastore(location)을 사용하여 체크포인트 파일을 읽으면 결과의 형식이나 내용이 원래 tall형 테이블과 같지 않을 수 있습니다.

'text' 파일 형식과 'spreadsheet' 파일 형식에 대해 write는 다음 규칙을 적용합니다.

  • write는 숫자형 변수를 longG 형식을 사용하여 출력하고 categorical형, 문자형 또는 string 형 변수를 따옴표가 없는 텍스트로 출력합니다.

  • 둘 이상의 열을 갖는, 텍스트가 아닌 변수의 경우, write는 각 라인에 구분 기호로 구분된 여러 필드를 출력하고 파일의 첫 번째 라인에 대해 적당한 열 제목을 생성합니다.

  • write는 차원이 3개 이상인 변수를 2차원 변수로 출력하고 나머지 차원은 축소합니다.

  • 내용이 숫자형, 논리형, 문자형 또는 categorical형인 셀 값 변수의 경우, write는 각 셀의 내용을 구분 기호로 구분된 여러 필드를 가진 하나의 행으로 출력합니다. 셀들의 데이터형이 서로 다른 경우, write는 빈 필드 하나를 출력합니다.

tall형 배열의 정확한 체크포인트를 써야 하는 경우에는 'text' 또는 'spreadsheet' 파일 형식을 사용하지 마십시오.

  • 특히 다량의 데이터 세트로 작업하는 경우, 작업 시 write 함수를 사용하여 데이터의 체크포인트 또는 스냅샷을 만드십시오. 이렇게 하면 tall형 배열을 생성한 모든 명령을 다시 실행하는 대신, 디스크에 있는 파일에서 직접 tall형 배열을 다시 생성할 수 있습니다.

확장 기능

tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.

R2016b에 개발됨