使用 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]
我有一个这样的数据框。
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]