write.dbf {foreign} | R Documentation |
The function tries to write a data frame to a DBF file.
write.dbf(dataframe, file, factor2char = TRUE)
dataframe |
a data frame object. |
file |
a file name to be written to. |
factor2char |
logical, default TRUE , convert factor columns to
character: otherwise they are written as the internal integer codes. |
Dots in column names are replaced by underlines in the DBF file, and names are truncated to 11 characters.
Only vector columns of classes "logical"
, "numeric"
,
"integer"
, "character"
, "factor"
and
"Date"
can be written. Other columns should be converted to
one of these.
Maximum precision (number of digits including minus sign and decimal sign) for numeric is 19 - scale (digits after the decimal sign) which is calculated internally based on the number of digits before the decimal sign.
Invisible NULL
.
Other applications have varying abilities to read the data types used
here. Microsoft Access read "numeric"
, "integer"
,
"character"
and "Date"
fields, including recognizing
missing values, but not "logical"
(read as 0,-1
).
Microsoft Excel understood all possible types but did not interpret missing
values in character fields correctly (showing them as character nuls).
Nicholas J. Lewin-Koh, modified by Roger Bivand and Brian Ripley; shapelib by Frank Warmerdam.
str(warpbreaks) try1 <- paste(tempfile(), ".dbf", sep = "") write.dbf(warpbreaks, try1, factor2char = FALSE) in1 <- read.dbf(try1) str(in1) try2 <- paste(tempfile(), ".dbf", sep = "") write.dbf(warpbreaks, try2, factor2char = TRUE) in2 <- read.dbf(try2) str(in2) unlink(c(try1, try2))