CSVREAD Read Comma Separated Value (CSV) File
Section: Input/Ouput Functions
Usage
Thecsvread
function reads a text file containing comma
separated values (CSV), and returns the resulting numeric
matrix (2D). The function supports multiple syntaxes. The
first syntax for csvread
is
x = csvread('filename')
which attempts to read the entire CSV file into array x
.
The file can contain only numeric values. Each entry in the
file should be separated from other entries by a comma. However,
FreeMat will attempt to make sense of the entries if the comma
is missing (e.g., a space separated file will also parse correctly).
For complex values, you must be careful with the spaces). The second
form of csvread
allows you to specify the first row and column
(zero-based index)
x = csvread('filename',firstrow,firstcol)
The last form allows you to specify the range to read also. This form is
x = csvread('filename',firstrow,firstcol,readrange)
where readrange
is either a 4-vector of the form [R1,C1,R2,C2]
,
where R1,C1
is the first row and column to use, and R2,C2
is the
last row and column to use. You can also specify the readrange
as
a spreadsheet range B12..C34
, in which case the index for the
range is 1-based (as in a typical spreadsheet), so that A1
is the
first cell in the upper left corner. Note also that csvread
is
somewhat limited.
Example
Here is an example of a CSV file that we wish to read in
sample_data.csv 10, 12, 13, 00, 45, 16 09, 11, 52, 93, 05, 06 01, 03, 04, 04, 90, -3 14, 17, 13, 67, 30, 43 21, 33, 14, 44, 01, 00
We start by reading the entire file
--> csvread('sample_data.csv') ans = 10 12 13 0 45 16 9 11 52 93 5 6 1 3 4 4 90 -3 14 17 13 67 30 43 21 33 14 44 1 0
Next, we read everything starting with the second row, and third column
--> csvread('sample_data.csv',1,2) ans = 52 93 5 6 4 4 90 -3 13 67 30 43 14 44 1 0
Finally, we specify that we only want the 3 x 3
submatrix starting
with the second row, and third column
--> csvread('sample_data.csv',1,2,[1,2,3,4]) ans = 52 93 5 4 4 90 13 67 30