Je travaille avec rpy2 sur Ubuntu 1104. Je suis le fichier COX. Les étapes données dans le fichier sont dans R. Je dois faire les mêmes étapes en python en utilisant rpy2. Je n'ai reçu aucun tutoriel avec rpy2. J'ai réussi à écrire la suite,Erreur dans rpy2- Aucune observation (non manquante)
from rpy2.robjects.packages import importr
from rpy2.robjects import IntVector, Formula
import rpy2.robjects as ro
cox = importr("survival")
csv = ro.vectors.DataFrame.from_csvfile('Rossi.txt', header=True, sep=' ')
fmla = Formula('Surv(week, arrest) ~ fin + age + race + wexp + mar + paro + prio')
mod_aalison = cox.coxph (fmla, data=csv)
Mais je reçois l'erreur suivante,
>>> mod_aalison = cox.coxph (fmla, data=csv)
Error in function (formula, data, weights, subset, na.action, init, control, :
No (non-missing) observations
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/rpy2/robjects/functions.py", line 83, in __call__
return super(SignatureTranslatedFunction, self).__call__(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/rpy2/robjects/functions.py", line 35, in __call__
res = super(Function, self).__call__(*new_args, **new_kwargs)
rpy2.rinterface.RRuntimeError: Error in function (formula, data, weights, subset, na.action, init, control, :
No (non-missing) observations
Suis-je manque quelque chose? Je n'ai aucune expérience antérieure sur R. Je ne suis pas sûr que les données de la fonction coxph doivent être au format de données. Toute aide est appréciée.
Ceci est lien vers Rossi.txt
Salut mbq, thnks pour vos ans. Cela a fonctionné et m'a sauvé. A noter également, RPY2 change les noms de colonnes comme, ** arrest ** à ** X.arrest. ** Cela ne devrait pas arriver. '>>> print csv.colnames [1]" X.week ". "X.arrest". "X.fin." "X.age". "X.race." "X.wexp." [7] "X.mar." "X.paro." "X.prio." "X.educ". "X.emp1." "X.emp2." [13] "X.emp3". "X.emp4." "X.emp5." "X.emp6." "X.emp7." "X.emp8." ' – Netro
Moi aussi, j'utilise' X <- cbind (var1, var2, ... varn) 'comment résoudre ceci? –