2017-07-04 1 views
-1

J'ai essayé d'exécuter le code dans le chapitre 7 L'exploration de données R apprentissage avec étude de cas livre, mais je suis une erreur dans la ligne suivante:Erreur: Impossible de trouver la fonction « ImportMethodFrom »

rankWorkflows(svm, maxs = TRUE) 

L'erreur était:

Error in as.character.default(X[[i]], ...) : no method for coercing this S4 class to a vector

Je recherche Internet et a trouvé la solution suivante:

importMethodsFrom(GenomicRanges, as.data.frame) 

et encore à nouveau Je suis une nouvelle erreur:

Error: could not find function "importMethodFrom"

je cherchais beaucoup, mais je n'ai rien :(

+0

vous manque probablement la bibliothèque où 'importMethodFrom' se trouve – Bea

+0

ouais je sais mais je ne connais pas le nom de la bibliothèque, je ne pourrais pas le trouver –

+0

Est-ce que' importMethodsFrom' n'est pas utilisé dans les fichiers 'NAMESPACE'? Essayez de charger toute la bibliothèque 'GenomicRanges' en utilisant' library (GenomicRanges) ' –

Répondre

0

Vous pouvez essayer d'utiliser library(sos) pour trouver les paquets où votre fonction.

library(sos) 
findFn("replaceherewithyourfunction") 
+0

J'ai reçu ce message: le téléchargement du paquet 'sos' a échoué –

+0

Avez-vous un message d'erreur d'accompagnement? – Bea

+0

juste cette erreur –

0

Sur la base de la réponse de @Bea, il ne semble pas être un importMethodsFrom partout dans R. Ma conjecture est que vous avez trouvé l'appel dans un fichier NAMESPACE. Ces fichiers ont une syntaxe différente de celle des scripts R normaux.

Si vous voulez charger une fonction spécifique d'un paquet R (plutôt que toutes les fonctions d'un paquet), vous pouvez utiliser libraryname::functionname instad de functionname dans votre code. Dans votre cas, remplacez as.data.frame avec GenomicRanges::as.data.frame

Si cela ne fonctionne pas (par exemple parce que vous n'avez pas as.data.frame nulle part dans votre code), vous pouvez également charger toute la bibliothèque GenomicRanges avec library(GenomicRanges)

+0

J'ai trouvé ce message: standardGeneric pour "as.data.frame" défini à partir du paquet "BiocGenerics" fonction (x, row.names = NULL, facultatif = FALSE, ...) standardGeneric ("as .data.frame ") Des méthodes peuvent être définies pour les arguments: x Utilisez showMethods (" as.data.frame ") pour les options actuellement disponibles. –

+0

Avez-vous essayé de charger la bibliothèque avec 'library (GenomicRanges)' avant d'appeler 'rankWorkflows'? –

+0

J'ai essayé mais ça n'a pas marché –