使用 rpy2 从 R Dataframe 获取单元格值

Get cell value from R Dataframe using rpy2

我有一个这样的数据框。

            OE000379   OE000373  OE000380   OE000394   OE000399   OE000415
OE000394 0.01562500 0.04687500 0.04687500 0.01562500 0.03320312 0.17382812
OE000399 0.00781250 0.03906250 0.03906250 0.00781250 0.03125000 0.25000000
OE000415 0.01562500 0.07812500 0.07812500 0.01562500 0.06250000 0.06250000
OE000388 0.00390625 0.03515625 0.03515625 0.00390625 0.10937500 0.09375000

使用rpy2 我想获取特定的单元格数据。我该怎么做?

例如OE000379 + OE000394 = 0.01562500

我已经设法使用这样的行号和列号来做到这一点:

print(dataframe.rx(1,1))

但我希望能够指定行名和列名。

您也可以使用 .rx()

>>> import rpy2.robjects as ro
>>> m = ro.r('matrix(1:6, ncol=2, dimnames=list(letters[1:3], LETTERS[1:2]))')
>>> print(m)                                                               
  A B
a 1 4
b 2 5
c 3 6
>>> m.rx('b', 'A')                                                         
R object with classes: ('RTYPES.INTSXP',) mapped to:
[2]
>>> m.rx('b', True)                                                        
R object with classes: ('RTYPES.INTSXP',) mapped to:
[2, 5]