Skip to content Skip to sidebar Skip to footer

How to Read in Texxt File Matlab

MATLAB - Information Import


Importing information in MATLAB means loading information from an external file. The importdata function allows loading various data files of different formats. It has the following five forms −

Sr.No. Part & Description
1

A = importdata(filename)

Loads data into array A from the file denoted by filename.

2

A = importdata('-pastespecial')

Loads data from the system clipboard rather than from a file.

3

A = importdata(___, delimiterIn)

Interprets delimiterIn as the column separator in ASCII file, filename, or the clipboard data. Yous can use delimiterIn with whatever of the input arguments in the above syntaxes.

4

A = importdata(___, delimiterIn, headerlinesIn)

Loads data from ASCII file, filename, or the clipboard, reading numeric information starting from line headerlinesIn+1.

5

[A, delimiterOut, headerlinesOut] = importdata(___)

Returns the detected delimiter character for the input ASCII file in delimiterOut and the detected number of header lines in headerlinesOut, using whatsoever of the input arguments in the previous syntaxes.

By default, Octave does non have back up for importdata() function, so yous will have to search and install this package to make post-obit examples work with your Octave installation.

Case one

Let u.s.a. load and display an image file. Create a script file and type the following lawmaking in it −

filename = 'smile.jpg'; A = importdata(filename); image(A);        

When yous run the file, MATLAB displays the epitome file. However, you must store it in the current directory.

Importing Imange Files

Example ii

In this case, nosotros import a text file and specify Delimiter and Column Header. Permit united states of america create a infinite-delimited ASCII file with column headers, named weeklydata.txt.

Our text file weeklydata.txt looks like this −

Dominicus  Mon  TuesDay  Wednesday  Th  FriDay  Sat 95.01   76.21   61.54    40.57       55.79    lxx.28   81.53 73.xi   45.65   79.nineteen    93.55       75.29    69.87   74.68 lx.68   41.85   92.eighteen    91.69       81.32    90.38   74.51 48.threescore   82.xiv   73.82    41.03       0.99     67.22   93.18 89.xiii   44.47   57.63    89.36       13.89    19.88   46.sixty        

Create a script file and type the following code in it −

filename = 'weeklydata.txt'; delimiterIn = ' '; headerlinesIn = ane; A = importdata(filename,delimiterIn,headerlinesIn);  % View data for k = [i:vii]    disp(A.colheaders{1, k})    disp(A.data(:, grand))    disp(' ') finish        

When yous run the file, it displays the following result −

SunDay    95.0100    73.1100    threescore.6800    48.6000    89.1300   Monday    76.2100    45.6500    41.8500    82.1400    44.4700   TuesDay    61.5400    79.1900    92.1800    73.8200    57.6300  Wednesday    twoscore.5700    93.5500    91.6900    41.0300    89.3600   ThursDay    55.7900    75.2900    81.3200    0.9900    13.8900   FriDay    70.2800    69.8700    90.3800    67.2200    19.8800  Saturday    81.5300    74.6800    74.5100    93.1800    46.6000        

Example iii

In this instance, let united states of america import data from clipboard.

Copy the post-obit lines to the clipboard −

Mathematics is simple

Create a script file and type the following lawmaking −

A = importdata('-pastespecial')        

When you run the file, it displays the following consequence −

A =     'Mathematics is uncomplicated'        

Low-Level File I/O

The importdata office is a loftier-level function. The depression-level file I/O functions in MATLAB let the virtually command over reading or writing data to a file. However, these functions demand more than detailed information about your file to work efficiently.

MATLAB provides the following functions for read and write operations at the byte or character level −

Office Clarification
fclose Close one or all open files
feof Test for end-of-file
ferror Information about file I/O errors
fgetl Read line from file, removing newline characters
fgets Read line from file, keeping newline characters
fopen Open file, or obtain information about open up files
fprintf Write data to text file
fread Read data from binary file
frewind Move file position indicator to offset of open file
fscanf Read data from text file
fseek Move to specified position in file
ftell Position in open file
fwrite Write data to binary file

Import Text Information Files with Low-Level I/O

MATLAB provides the following functions for depression-level import of text information files −

  • The fscanf role reads formatted data in a text or ASCII file.

  • The fgetl and fgets functions read one line of a file at a time, where a newline character separates each line.

  • The fread function reads a stream of data at the byte or bit level.

Example

We have a text data file 'myfile.txt' saved in our working directory. The file stores rainfall data for iii months; June, July and August for the twelvemonth 2012.

The data in myfile.txt contains repeated sets of time, month and rainfall measurements at 5 places. The header data stores the number of months Thou; so nosotros have Chiliad sets of measurements.

The file looks like this −

Rainfall Data Months: June, July, Baronial   K = 3 12:00:00 June-2012 17.21  28.52  39.78  xvi.55 23.67 19.15  0.35   17.57  NaN   12.01 17.92  28.49  17.forty  17.06 11.09 ix.59   nine.33   NaN    0.31  0.23  10.46  13.17  NaN    14.89 19.33 20.97  19.50  17.65  14.45 xiv.00 18.23  x.34  17.95  sixteen.46 nineteen.34 09:10:02 July-2012 12.76  sixteen.94  14.38  11.86 16.89 20.46  23.17  NaN    24.89 19.33 thirty.97  49.50  47.65  24.45 34.00 18.23  30.34  27.95  16.46 xix.34 xxx.46  33.17  NaN    34.89  29.33 30.97  49.50  47.65  24.45 34.00 28.67  thirty.34  27.95  36.46 29.34 15:03:40 August-2012 17.09  16.55  nineteen.59  17.25 19.22 17.54  xi.45  xiii.48  22.55 24.01 NaN    21.19  25.85  25.05 27.21 26.79  24.98  12.23  xvi.99 18.67 17.54  xi.45  thirteen.48  22.55 24.01 NaN    21.xix  25.85  25.05 27.21 26.79  24.98  12.23  sixteen.99 18.67        

We will import data from this file and display this data. Take the following steps −

  • Open the file with fopen role and become the file identifier.

  • Describe the information in the file with format specifiers, such every bit '%s' for a string, '%d' for an integer, or '%f' for a floating-bespeak number.

  • To skip literal characters in the file, include them in the format description. To skip a data field, apply an asterisk ('*') in the specifier.

    For example, to read the headers and return the unmarried value for K, we write −

    One thousand = fscanf(fid, '%*s %*s\n%*s %*due south %*south %*s\nM=%d\n\n', 1);            
  • By default, fscanf reads data according to our format clarification until it does not find any match for the data, or information technology reaches the cease of the file. Hither we will apply for loop for reading three sets of data and each time, it volition read 7 rows and v columns.

  • We will create a structure named mydata in the workspace to shop information read from the file. This construction has three fields - time, month, and raindata array.

Create a script file and type the following code in it −

filename = '/data/myfile.txt'; rows = 7; cols = 5;   % open up the file fid = fopen(filename);   % read the file headers, find Yard (number of months) G = fscanf(fid, '%*south %*due south\due north%*southward %*s %*southward %*s\nM=%d\n\n', 1);   % read each set of measurements for due north = 1:One thousand    mydata(n).time = fscanf(fid, '%due south', 1);    mydata(due north).month = fscanf(fid, '%s', 1);      % fscanf fills the array in column order,    % so transpose the results    mydata(n).raindata  = ...       fscanf(fid, '%f', [rows, cols]); end for n = 1:M    disp(mydata(n).time), disp(mydata(n).calendar month)    disp(mydata(n).raindata) end   % close the file fclose(fid);        

When you run the file, it displays the following event −

12:00:00 June-2012    17.2100   17.5700   11.0900   xiii.1700   xiv.4500    28.5200       NaN    9.5900       NaN   14.0000    39.7800   12.0100    9.3300   fourteen.8900   18.2300    sixteen.5500   17.9200       NaN   nineteen.3300   x.3400    23.6700   28.4900    0.3100   20.9700   17.9500    19.1500   17.4000    0.2300   xix.5000   16.4600    0.3500   17.0600   10.4600   17.6500   19.3400  09:10:02 July-2012    12.7600       NaN   34.0000   33.1700   24.4500    sixteen.9400   24.8900   18.2300       NaN   34.0000    14.3800   nineteen.3300   thirty.3400   34.8900   28.6700    xi.8600   thirty.9700   27.9500   29.3300   30.3400    xvi.8900   49.5000   16.4600   30.9700   27.9500    20.4600   47.6500   19.3400   49.5000   36.4600    23.1700   24.4500   xxx.4600   47.6500   29.3400  fifteen:03:40 August-2012    17.0900   thirteen.4800   27.2100   eleven.4500   25.0500    16.5500   22.5500   26.7900   thirteen.4800   27.2100    19.5900   24.0100   24.9800   22.5500   26.7900    17.2500       NaN   12.2300   24.0100   24.9800    19.2200   21.1900   16.9900       NaN   12.2300    17.5400   25.8500   18.6700   21.1900   16.9900    11.4500   25.0500   17.5400   25.8500   xviii.6700        

Useful Video Courses


Data Preprocessing for Machine Learning using MATLAB

Video

Complete MATLAB Tutorial: Go from Beginner to Expert

Video

Image Processing Toolbox in MATLAB

Video

Matlab - The Complete Course

Video

Digital Image Processing using MATLAB

Video

Backpropagation Learning Method in Matlab

Video

mccrayforit2001.blogspot.com

Source: https://www.tutorialspoint.com/matlab/matlab_data_import.htm

Post a Comment for "How to Read in Texxt File Matlab"