dlmread

(Не рекомендуемый) Чтение файла числовых данных с разделителем ASCII в матрицу

dlmread не рекомендуется. Использовать readmatrix вместо этого. Для получения дополнительной информации см. раздел Вопросов совместимости.

Описание

пример

M = dlmread(filename) считывает числовой файл данных с разделителем ASCII в матрицу M. The dlmread функция обнаруживает разделитель из файла и обрабатывает повторяющиеся белые пространства как один разделитель.

M = dlmread(filename,delimiter) считывает данные из файла с помощью указанного разделителя и обрабатывает повторяющиеся символы разделителя как отдельные разделители.

пример

M = dlmread(filename,delimiter,R1,C1) начинает чтение со смещения строки R1 и смещение столбца C1. Для примера смещение R1=0, C1=0 задайте первое значение в файле.

Чтобы задать смещения строки и столбца без указания разделителя, используйте пустой символ в качестве заполнителя, например M = dlmread(filename,'',2,1).

пример

M = dlmread(filename,delimiter,[R1 C1 R2 C2]) считывает только области значений, ограниченные смещениями строк R1 и R2 и смещения столбцов C1 и C2. Другой способ определения области значений - использовать обозначения электронных таблиц, такие как 'A1..B7' вместо [0 0 6 1].

Примеры

свернуть все

Прочтите образец файла, count.dat.

M = dlmread('count.dat')
M = 24×3

    11    11     9
     7    13    11
    14    17    20
    11    13     9
    43    51    69
    38    46    76
    61   132   186
    75   135   180
    38    88   115
    28    36    55
      ⋮

dlmread обнаруживает разделитель из файла и возвращает матрицу.

Запись двух матриц в файл, а затем чтение всего файла с помощью dlmread.

Экспорт матрицы в файл с именем myfile.txt. Затем добавьте дополнительную матрицу к файлу, который смещен на одну строку ниже первой.

X = magic(3);
dlmwrite('myfile.txt',[X*5 X/5],' ')
dlmwrite('myfile.txt',X,'-append', ...
   'roffset',1,'delimiter',' ')

Просмотрите содержимое файла.

type myfile.txt
40 5 30 1.6 0.2 1.2
15 25 35 0.6 1 1.4
20 45 10 0.8 1.8 0.4
  
8 1 6
3 5 7
4 9 2

Чтение всего файла с помощью dlmread.

M = dlmread('myfile.txt')
M = 6×6

   40.0000    5.0000   30.0000    1.6000    0.2000    1.2000
   15.0000   25.0000   35.0000    0.6000    1.0000    1.4000
   20.0000   45.0000   10.0000    0.8000    1.8000    0.4000
    8.0000    1.0000    6.0000         0         0         0
    3.0000    5.0000    7.0000         0         0         0
    4.0000    9.0000    2.0000         0         0         0

Когда dlmread импортирует файл, содержащий непрямоугольные данные, он заполняет пустые поля нулями.

Создайте файл с именем dlmlist.txt который содержит заголовки столбцов и разграниченные пробелами значения.

test max min direction
10 27.7 12.4 12
11 26.9 13.5 18
12 27.4 16.9 31
13 25.1 12.7 29  

Считайте числовые значения в файле. Задайте разделитель помещения, смещение строки 1 и смещение столбца 0.

filename = 'dlmlist.txt';
M = dlmread(filename,' ',1,0)
M =

   10.0000   27.7000   12.4000   12.0000
   11.0000   26.9000   13.5000   18.0000
   12.0000   27.4000   16.9000   31.0000
   13.0000   25.1000   12.7000   29.0000

Создайте файл с именем dlmlist.txt который содержит заголовки столбцов и разграниченные пробелами значения.

test max min direction
10 27.7 12.4 12
11 26.9 13.5 18
12 27.4 16.9 31
13 25.1 12.7 29  

Считайте только последние две строки числовых данных из файла.

M = dlmread('dlmlist.txt',' ',[3 0 4 3])
M =

   12.0000   27.4000   16.9000   31.0000
   13.0000   25.1000   12.7000   29.0000

Входные параметры

свернуть все

Имя файла, заданное как вектор символов или строка.

Пример: 'myFile.dat' или "myFile.dat"

Типы данных: char | string

Символ разделителя поля, заданный как вектор символов или строка. Использование '\t' для задания разделителя табуляции.

Пример: ',' или ","

Пример: ' ' или " "

Типы данных: char | string

Смещение начальной строки, заданное как неотрицательное целое число. Первая строка имеет смещение 0.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Начальное смещение столбца, заданное как неотрицательное целое число. Первый столбец имеет смещение 0.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Окончание смещения строки, заданное как неотрицательное целое число. Первая строка имеет смещение 0.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Окончание смещения столбца, заданное как неотрицательное целое число. Первый столбец имеет смещение 0.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Совет

  • Пропустите строки заголовка или столбцы путем определения смещения строки и столбца. Все значения в файле, отличном от заголовков, должны быть числовыми.

Алгоритмы

dlmread заполняет пустые разделенные поля нулем. Когда dlmread функция читает файлы данных со линиями, которые заканчиваются непространственным разделителем, таким как точка с запятой, она возвращает матрицу, M, который имеет дополнительный последний столбец нулей.

dlmread импортирует любое комплексное число в целом в комплексное числовое поле. В этой таблице показаны допустимые формы для комплексного числа.

Форма

Пример

±<real>±<imag>i|j

5.7-3.1i

±<imag>i|j

-7j

Встроенное пустое пространство в комплексном числе недопустимо и dlmread рассматривает его как разделитель полей.

Вопросы совместимости

расширить все

Не рекомендуемый запуск в R2019a

Представлено до R2006a