1
使用rmagic
我越来越%R
和%%R
之间的行为不一致阅读a particular file(而不是其他人)时:为什么为什么'rmagic'%R读取文件时会导致错误,而%% R不会?
%%R
usda = read.csv("USDA.csv")
工作,同时
%R usda = read.csv("USDA.csv")
失败
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-64-01ec3b4742c8> in <module>()
----> 1 get_ipython().magic(u'R usda = read.csv("USDA.csv")')
...
/Library/Python/2.7/site-packages/numpy/core/numeric.pyc in asarray(a, dtype, order)
458
459 """
--> 460 return array(a, dtype, copy=False, order=order)
461
462 def asanyarray(a, dtype=None, order=None):
TypeError: __float__ returned non-float (type rpy2.rinterface.NAIntegerType)
再一次,这只发生在the linked file,而不是与其他任何我试过的。
但是为什么相同的代码应该使用'%% R'而不是'%R'。这对我来说看起来像一个错误。 – orome
区别在于'%% R'不会尝试返回一个值,而是'%R'确实,并且在将'data.frame'作为'array'返回时,它就成为了一个部分。也可能被认为是bug。无论如何,在很多情况下'R' - >'python'转换都很棘手。 –
啊,我现在明白了:这就是'-n'所做的。说得通。 – orome