IPython Notebook を使用して、Python と R コードを 1 つのワークフローに統合し、いくつかの空間分析を生成しています。以前は、このタスクを実行するために必要なインフラストラクチャを両方の名前空間にインポートできていましたが、その後の更新により何かが変わったと思います。特に、 %%Rセルでrgdalライブラリを呼び出すことができなくなりました。
%%R
library(rgdal)
***************
Loading required package: sp
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/home/choct155/R/x86_64-pc-linux-gnu-library/3.0/rgdal/libs/rgdal.so':
/usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name
Error: package or namespace load failed for ‘rgdal’
これが奇妙である理由は、ベース R と RStudio でライブラリを呼び出すことができるためです (出力は同じです)。
> library(rgdal)
Loading required package: sp
rgdal: version: 0.8-11, (SVN revision 479M)
Geospatial Data Abstraction Library extensions to R successfully loaded
Loaded GDAL runtime: GDAL 1.10.0, released 2013/04/24
Path to GDAL shared files: /usr/share/gdal/1.10
Loaded PROJ.4 runtime: Rel. 4.8.0, 6 March 2012, [PJ_VERSION: 480]
Path to PROJ.4 shared files: (autodetected)
RStudio と Notebook のバージョン情報は同じです...:
> version
_
platform x86_64-pc-linux-gnu
arch x86_64
os linux-gnu
system x86_64, linux-gnu
status
major 3
minor 0.1
year 2013
month 05
day 16
svn rev 62743
language R
version.string R version 3.0.1 (2013-05-16)
nickname Good Sport
...Rの場所は次のとおりです。
> Sys.which("R")
R
"/usr/bin/R"
Notebook 内からrgdalをインストールしようとしたことに注意してください...:
%%R
install.packages("rgdal")
************************
Installing package into ‘/home/choct155/R/x86_64-pc-linux-gnu-library/3.0’
(as ‘lib’ is unspecified)
--- Please select a CRAN mirror for use in this session ---
trying URL 'http://watson.nci.nih.gov/cran_mirror/src/contrib/rgdal_0.8-11.tar.gz'
Content type 'application/octet-stream' length 1607285 bytes (1.5 Mb)
opened URL
==================================================
downloaded 1.5 Mb
The downloaded source packages are in
‘/tmp/RtmpDTrZOJ/downloaded_packages’
...そして、RStudio に正常にロードされたものと同じバージョンです。
> sessionInfo()
R version 3.0.1 (2013-05-16)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8
[6] LC_MESSAGES=en_US.UTF-8 LC_PAPER=C LC_NAME=C LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] rgdal_0.8-11 sp_1.0-11
loaded via a namespace (and not attached):
[1] grid_3.0.1 lattice_0.20-23 tools_3.0.1
それで、私はここで何が起こっているのか途方に暮れています。RStudio で作業を進めることはできますが、作成しようとしている製品が断片化されています。この問題に関するアドバイスをいただければ幸いです。
補遺:これは %rmagic だけの問題ではないようです。Python で別の操作を実行しようとして、osgeoとgdalの両方をインポートしようとすると、次のエラーが発生しました。
import gdal
************************
ERROR: ImportError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name [IPython.core.interactiveshell]
ERROR:astropy:ImportError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-13-27bf4694dd2b> in <module>()
----> 1 import gdal
/home/choct155/analysis/Anaconda/lib/python2.7/site-packages/gdal.py in <module>()
1 # import osgeo.gdal as a convenience
----> 2 from osgeo.gdal import deprecation_warn
3 deprecation_warn('gdal')
4
5 from osgeo.gdal import *
/home/choct155/analysis/Anaconda/lib/python2.7/site-packages/osgeo/__init__.py in <module>()
19 fp.close()
20 return _mod
---> 21 _gdal = swig_import_helper()
22 del swig_import_helper
23 else:
/home/choct155/analysis/Anaconda/lib/python2.7/site-packages/osgeo/__init__.py in swig_import_helper()
15 if fp is not None:
16 try:
---> 17 _mod = imp.load_module('_gdal', fp, pathname, description)
18 finally:
19 fp.close()
ImportError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name
文字通りGDALを再度インストールしたので、最新バージョンを使用しています。考え?