2

このRスクリプトと同等のことをしたい:

> csvData <- read.csv(file='/homes/ndeklein/test.csv', head=TRUE, sep='\t')
> csv = subset(csvData, !duplicated(id))

rpy2で。ただし、rpy2.robjects を R としてインポートすると、Rr['!duplicated'] が認識されません (次のように)。

import rpy2.robjects as R
csvData = R.r['read.csv'](file='/homes/ndeklein/test.csv', head=True, sep='\t')
csv = R.r['subset'](csvData, R.r['!duplicated']('id'))

rpy2で!duplicatedを使用するにはどうすればよいですか?


編集:

R.r['duplicated']

が動くので作り方募集中!rpy2で作業

4

1 に答える 1

2

他の誰かがそれを必要とする場合に備えて、私はメーリングリストを通じて答えを得ました:

Rr'!' の使用 Rr'!duplicated' の代わりに動作します。

# getting the not sign of R
rnot = R.r['!']
# getting duplicated
duplicated = R.r['duplicated']
# get only the rows with unique ids and put it in a new matrix
csvUniqID = R.r['subset'](csvData,  rnot(duplicated(csvData[0])))
于 2012-02-23T13:23:04.367 に答える