|
This section introduces reading and writing
simple ASCII data sets. All XploRe code for this section can be
found in the quantlet iofmt01.xpl.
The function
read
is the command to read numeric data from a file.
Each column of the file will be interpreted as a vector of the
resulting matrix. Let us consider the data file
geo.dat
which has the following
contents:
86 5 87 14 88 24 89 64 90 100 91 129 92 200 93 176 94 177We can read this data file and store it into the matrix x by the following instruction:
x=read("geo")Typing just x at the command line will show the contents of x as follows:
Contents of x [1,] 86 5 [2,] 87 14 [3,] 88 24 [4,] 89 64 [5,] 90 100 [6,] 91 129 [7,] 92 200 [8,] 93 176 [9,] 94 177Data files often contain mixed text and numeric columns, as in popul.dat:
778 New_York 355 Chicago 248 Los_Angeles 200 Philadelphia 167 Detroit 94 Baltimore 94 Houston 88 Cleveland 76 Washington_DC 75 Saint_Louis 74 Milwaukee 74 San_Francisco 70 Boston 68 Dallas 63 New_Orleanswhich stores population data about US cities. Loading this data file with
library("xplore") x=readm("popul")creates a list x which consists of three components. The instruction names(x) shows
Contents of names [1,] "type" [2,] "double" [3,] "text"in the output window. The first component, the vector x.type indicates the type of the column in the original data file:
Contents of type [1,] 0 [2,] 1Here, 0 stands for numeric and 1 for text. The second and third components contain the data: x.double is the numeric column, x.text is the text column.
In addition to
read
and
readm, XploRe provides
the command
readascii
to read any type of ASCII
data.
readm
is actually based on
readascii.
We will have a closer look at
readascii
in the next section when we discuss input format strings.
To write data to a data file, the function
write
can be used.
write
can save both, numeric or text data. Let us consider
the following example:
x=(1:4)~(2:5) write(x,"mydata.dat")writes the matrix to the data file mydata.dat. This file has then the following contents:
1.000000 2.000000 2.000000 3.000000 3.000000 4.000000 4.000000 5.000000Note that
![]() |
MD*TECH Method and Data Technologies |
http://www.mdtech.de mdtech@mdtech.de |