當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R write.dbf 寫入 DBF 文件


R語言 write.dbf 位於 foreign 包(package)。

說明

該函數嘗試將數據幀寫入 DBF 文件。

用法

write.dbf(dataframe, file, factor2char = TRUE, max_nchar = 254)

參數

dataframe

DataFrame 對象。

file

要寫入的文件名。

factor2char

邏輯,默認 TRUE ,將因子列轉換為字符:否則它們將被寫為內部整數代碼。

max_nchar

字符字段中允許的最大字符數。超過此範圍的字符串將被截斷並發出警告。查看具體信息。

細節

DBF 文件中列名中的點被下劃線替換,並且名稱被截斷為 11 個字符。

隻能寫入 "logical""numeric""integer""character""factor""Date" 類的向量列。其他列應轉換為其中之一。

數字的最大精度(包括減號和小數點在內的位數)為 19 - 小數位數(小數點後的位數),這是根據小數點前的位數在內部計算的。

原始 DBASE 格式將字符字段限製為 254 個字節。據說Clipper和FoxPro最多可以讀取32K,並且可以編寫一個最多可以接受65535字節的讀取器。 (文檔建議假定僅支持 ASCII 字符。)期望使用舊標準(包括 Excel 2003、Access 2003 和 OpenOffice 2.0)的讀者會將字段截斷為最大寬度模 256,因此增加 max_nchar 僅當您確定目標讀者支持更寬的字符字段時。

看不見的NULL

注意

其他應用程序具有不同的能力來讀取此處使用的數據類型。 Microsoft Access 讀取 "numeric""integer""character""Date" 字段,包括識別缺失值,但不讀取 "logical" (讀為 0,-1 )。 Microsoft Excel 理解所有可能的類型,但沒有正確解釋字符字段中的缺失值(將它們顯示為字符 null)。

例子

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))

作者

Nicholas J. Lewin-Koh, modified by Roger Bivand and Brian Ripley; shapelib by Frank Warmerdam.

參考

http://shapelib.maptools.org/

https://www.clicketyclick.dk/databases/xbase/format/data_types.html

也可以看看

read.dbf

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Write a DBF File。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。