Question

Je veux faire l'équivalent de ce script R:

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

dans rpy2. Cependant, si j'importe Rpy2.Robjects comme R, il ne reconnaît pas RR ['! Dupliqué'] (comme ceci):

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'))

Comment puis-je utiliser! Dupliqué dans RPY2?


Éditer:

R.r['duplicated']

fonctionne, donc je cherche comment faire! travailler dans rpy2

Était-ce utile?

La solution

J'ai obtenu la réponse à une liste de diffusion, au cas où quelqu'un d'autre en aura besoin:

En utilisant R.R '!' Au lieu de R.R '! Duplicated' Works.

# 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])))
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top