dlmread

Считайте разграниченный ASCII файл числовых данных в матрицу

Синтаксис

M = dlmread(filename)
M = dlmread(filename,delimiter)
M = dlmread(filename,delimiter,R1,C1)
M = dlmread(filename,delimiter,[R1 C1 R2 C2])

Описание

пример

M = dlmread(filename) читает разграниченный ASCII файл числовых данных в матричный M. Функция 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,,[ ]) delimiterR1 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 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 рассматривает его как разделитель полей.

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

Была ли эта тема полезной?