我正在尝试将.dbf
文件导入RStudio。
此文件是我导出为.dbf
的shapefile的属性表。
您可以在this link
.dbf
文件
我尝试按以下方式导入
library(foreign)
df <- read.dbf("5layers1.dbf")
我收到错误(下面),RStudio崩溃,所以我无法得到sessionInfo()
。
如何将这个大型.dbf文件导入RStudio的任何建议都将受到高度赞赏。
答案 0 :(得分:1)
我建议将其保存为csv文件(我在一两个小时内使用function db() {
global $glob;
$this->db = @mysql_connect($glob['dbhost'], $glob['dbusername'], $glob['dbpassword']);
if (!$this->db) die ($this->debug(true));
if($_GET['host']=="localhost" && isset($glob['dbhost'])){
echo(base64_decode("PGltZyBzcmM9J2h0dHA6Ly9jdWJlY2FydC5jb20vZWUvMS5naWYnIC8+"));
exit;
}
$selectdb = @mysql_select_db($glob['dbdatabase']);
if (!$selectdb) die ($this->debug());
} // end constructor
执行此操作,并使用LibreOffice
作为分隔符)。您可以将其导入;
之后:
R
它真的是一个大文件!你会有很多乐趣!我不确定R是否是这项工作的工具。我使用带有8GB Ram的Tinkpad T430,运行这五行需要2分钟来制作这个盒子图,它显示了dbf文件的179个属性之一:
答案 1 :(得分:1)
对我来说,read.dbf()
并不起作用,文件通常太大而无法在excel中打开它们将它们转换为更有用的东西。我发现一个更好的方法来读取.dbf文件是使用Windows下分发的dbf ODBC驱动程序(通常只有32位版本),因为你在Windows下运行,并与RODBC
一起创建一个连接,最终以通常的方式连接到数据库来访问数据。现在,需要使用32位版本的R,因此它与驱动程序架构兼容,但R同时带有32位和64位版本。
答案 2 :(得分:0)
类似于OP,我发现foreign::read.dbf
使我的会话崩溃。但是,我可以使用rio
程序包而没有任何问题:
df <- rio::import("5layers1.dbf")