Hi, all
When I import R library *foreign* using the following code:

In [12]: import rpy2.robjects as ro
In [13]: foreign_lib = ro.packages.importr('foreign')

An error message is shown:

LibraryError                              Traceback (most recent call last)
<ipython-input-13-5d47724553fe> in <module>()
----> 1 foreign_lib = ro.packages.importr('foreign')

/usr/lib/python3.3/site-packages/rpy2/robjects/packages.py in importr(name, 
lib_loc, robject_translations, signature_translation, suppress_messages, 
on_conflict, data)
    313                                           exported_names = 
exported_names,
    314                                           on_conflict = on_conflict,
--> 315                                           version = version)
    316     else:
    317         pack = Package(env, name, translation = robject_translations,

/usr/lib/python3.3/site-packages/rpy2/robjects/packages.py in __init__(self, 
env, name, translation, exported_names, on_conflict, version)
    174             exported_names = set(self._env.keys())
    175         self._exported_names = exported_names
--> 176         self.__fill_rpy2r__(on_conflict = on_conflict)
    177         self._exported_names = self._exported_names.difference(mynames)
    178         self.__version__ = version

/usr/lib/python3.3/site-packages/rpy2/robjects/packages.py in 
__fill_rpy2r__(self, on_conflict)
    238 class SignatureTranslatedPackage(Package):
    239     def __fill_rpy2r__(self, on_conflict = 'fail'):
--> 240         super(SignatureTranslatedPackage, 
self).__fill_rpy2r__(on_conflict = on_conflict)
    241         for name, robj in self.__dict__.items():
    242             if isinstance(robj, rinterface.Sexp) and robj.typeof == 
rinterface.CLOSXP:

/usr/lib/python3.3/site-packages/rpy2/robjects/packages.py in 
__fill_rpy2r__(self, on_conflict)
    210                                              rpyname)
    211                         if on_conflict == 'fail':
--> 212                             raise LibraryError(msg)
    213                         else:
    214                             warn(msg)

LibraryError: Conflict when converting R symbol in the package "foreign" to a 
Python symbol (read.mtp -> read_mtp while there is already read_mtp)

I don't quite understand what happened, I check out the read.mtp function in 
foreign package of R, and the function name is alwayes read.mtp not read_mtp. 
And it seems no errors when I import other R library.
Does anyone tell me how to do? Thanks a lot.

the basic information:
In [15]: import sys
In [16]: sys.version
Out[16]: '3.3.0 (default, Dec 22 2012, 21:02:07) \n[GCC 4.7.2]'

[lianpeng@ArchLinux ~]$ R --version
R version 2.15.2 (2012-10-26) -- "Trick or Treat"

Lian Peng
------------------------------------------------------------------------------
Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester  
Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the  
endpoint security space. For insight on selecting the right partner to 
tackle endpoint security challenges, access the full report. 
http://p.sf.net/sfu/symantec-dev2dev
_______________________________________________
rpy-list mailing list
rpy-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rpy-list

Reply via email to