mtext - r plot subtitle




Errore: impossibile trovare la funzione... in R (7)

Ci sono alcune cose che dovresti controllare:

  1. Hai scritto correttamente il nome della tua funzione? I nomi sono case sensitive.
  2. Hai installato il pacchetto che contiene la funzione? install.packages("thePackage") (questo deve essere fatto solo una volta)
  3. Hai collegato quel pacchetto allo spazio di lavoro? require(thePackage) o library(thePackage) (questo dovrebbe essere fatto ogni volta che si avvia una nuova sessione R)
  4. Stai usando una versione R più vecchia in cui questa funzione non esisteva ancora?

Se non sei sicuro in quale pacchetto si trova questa funzione, puoi fare alcune cose.

  1. Se sei sicuro di aver installato e caricato / caricato il pacchetto giusto, digita help.search("some.function") o ??some.function per ottenere una finestra di informazioni in grado di dirti in quale pacchetto è contenuto.
  2. find e getAnywhere possono anche essere utilizzati per individuare le funzioni.
  3. Se non hai idea del pacchetto, puoi utilizzare findFn nel pacchetto sos come spiegato in questa risposta .
  4. RSiteSearch("some.function") o la ricerca con rseek sono modi alternativi per trovare la funzione.

A volte è necessario utilizzare una versione precedente di R, ma eseguire il codice creato per una versione più recente. Quindi le nuove funzioni aggiunte (ad es. HasName in R 3.4.0) non saranno trovate. Se si utilizza una versione R precedente e si desidera utilizzare una funzione più recente, è possibile utilizzare i backports del pacchetto per rendere disponibili tali funzioni. Troverai anche un elenco di funzioni che devono essere ripristinate sul repository git dei backport . Tenere presente che le versioni R precedenti a R3.0.0 non sono compatibili con i pacchetti creati per R3.0.0 e versioni successive.

Questo dovrebbe essere una domanda FAQ, quindi per favore sii il più completo possibile. La risposta è una risposta comunitaria, quindi sentiti libero di modificare se pensi che manchi qualcosa.

Questa domanda è stata discussa e approvata su meta.

Sto usando R e some.function provato some.function ma ho ricevuto questo messaggio di errore:

Error: could not find function `some.function`

Questa domanda appare molto regolarmente. Quando ottieni l' error: could not find function in R, come puoi risolverlo?


Di solito riesco a risolvere questo problema quando un computer è sotto il mio controllo, ma è più fastidioso quando si lavora con una griglia. Quando una griglia non è omogenea, non tutte le librerie possono essere installate e la mia esperienza è stata spesso che un pacchetto non è stato installato perché non è stata installata una dipendenza. Per risolvere questo problema, controllo quanto segue:

  1. Fortran è installato? (Cerca 'gfortran'.) Questo riguarda diversi pacchetti importanti in R.
  2. Java è installato? I percorsi di classe Java sono corretti?
  3. Verificare che il pacchetto sia stato installato dall'amministratore e disponibile per l'utente appropriato. A volte gli utenti installano i pacchetti nelle posizioni sbagliate o eseguono senza un accesso appropriato alle librerie corrette. .libPaths() è un buon controllo.
  4. Controlla i risultati ldd per R, per essere sicuro delle librerie condivise
  5. È opportuno eseguire periodicamente uno script che carica solo tutti i pacchetti necessari e fa qualche piccolo test. Ciò attira il problema del pacchetto il prima possibile nel flusso di lavoro. Questo è simile a test di collaudo o unità, tranne che è più simile a una prova di fumo per assicurarsi che le cose di base funzioni.
  6. Se i pacchetti possono essere archiviati in una posizione accessibile dalla rete, vero? Se non possono, c'è un modo per garantire versioni coerenti attraverso le macchine? (Potrebbe sembrare OT, ma l'installazione corretta del pacchetto include la disponibilità della versione corretta .)
  7. Il pacchetto è disponibile per il sistema operativo specificato? Sfortunatamente, non tutti i pacchetti sono disponibili su tutte le piattaforme. Questo torna al punto 5. Se possibile, prova a trovare un modo per gestire un SO diverso passando a un gusto appropriato di un pacchetto o disattivando la dipendenza in alcuni casi.

Avendo incontrato questo un bel po ', alcuni di questi passaggi diventano abbastanza di routine. Sebbene il # 7 possa sembrare un buon punto di partenza, questi sono elencati in ordine approssimativo della frequenza che li uso.


Ho avuto la stessa cosa, errore, stavo correndo la versione .99xxx, ho controllato gli aggiornamenti dal menu di aiuto e aggiornato My RStudio a 1.0x, quindi l'errore non è venuto

Soluzione così semplice, basta aggiornare il tuo R Studio


Potresti essere in grado di correggere questo errore per nome spaziatura :: la chiamata di funzione

comparison.cloud(colors = c("red", "green"), max.words = 100)

a

wordcloud::comparison.cloud(colors = c("red", "green"), max.words = 100)

Se ciò si verifica mentre controlli il pacco (controllo R CMD), dai un'occhiata al tuo NAMESPACE.

Puoi risolvere questo problema aggiungendo la seguente dichiarazione al NAMESPACE:

exportPattern("^[^\\\\.]")

Questo esporta tutto ciò che non inizia con un punto ("."). Questo ti permette di avere le tue funzioni nascoste, iniziando da un punto:

.myHiddenFunction <- function(x) cat("my hidden function")

Se si utilizza la funzione parallelMap è necessario esportare le funzioni personalizzate nei lavori slave, altrimenti viene visualizzato l'errore "Impossibile trovare la funzione".

Se si imposta un livello non mancante su parallelStart lo stesso argomento deve essere passato a parallelExport , altrimenti si ottiene lo stesso errore. Quindi questo dovrebbe essere rigorosamente seguito:

parallelStart(mode = "<your mode here>", N, level = "<task.level>")
parallelExport("<myfun>", level = "<task.level>")

Rdocumentation.org ha una funzione di ricerca molto utile che - tra le altre cose - ti permette di trovare le funzioni - da tutti i pacchetti su CRAN, così come dai pacchetti di Bioconductor e GitHub.







r-faq