0
a
和b
2個IntVectors的都是rpy2 IntVector
S:差異RPY
<IntVector - Python:0x10676dfc8/R:0x7fc714d64948>
[ 81, NA_integer_, NA_integer_, ..., 120, 46, NA_integer_]
我如何計算b - a
區別?我想要結果爲IntVector
。
a
和b
2個IntVectors的都是rpy2 IntVector
S:差異RPY
<IntVector - Python:0x10676dfc8/R:0x7fc714d64948>
[ 81, NA_integer_, NA_integer_, ..., 120, 46, NA_integer_]
我如何計算b - a
區別?我想要結果爲IntVector
。
In [1]: from rpy2 import robjects
In [2]: x = robjects.IntVector(range(10))
In [3]: y = robjects.IntVector(range(10))
In [4]: x.ro-y
Out[4]:
<IntVector - Python:0x1067d3830/R:0x102d6ef20>
[ 0, 0, 0, ..., 0, 0, 0]
In [5]: x.ro+y
Out[5]:
<IntVector - Python:0x1067d3cf8/R:0x102d6eec8>
[ 0, 2, 4, ..., 14, 16, 18]
subtract = r('''function(x, y) x - y''')
subtract(b, a)
這個解決方案的好處是它不僅能處理IntVectors,還能處理任何R類型。 糟糕的是,將命令作爲字符串傳遞給R解釋器很醜陋。