rilascio del linguaggio di programmazione e dell'ambiente software associato, per risolvere problemi di elaborazione statistica, analisi e visualizzazione dei dati. Per affrontare compiti specifici sono disponibili oltre 15000 pacchetti di estensione. L'implementazione di base del linguaggio R è sviluppata nell'ambito del progetto GNU e su licenza GPL.
Nella nuova versione centinaia di miglioramenti, tra cui:
- Passaggio all'ereditarietà degli oggetti 'matrix' dalla classe 'array';
- Nuova sintassi per definire costanti simboliche r'(…)', dove '…' è qualsiasi sequenza di caratteri, escluso il ')';
- Utilizzo predefinito di 'stringsAsFactors = FALSE', che disabilita la conversione delle stringhe nelle chiamate a data.frame() e read.table();
- La funzione plot() è stata spostata nel pacchetto 'base' dal pacchetto 'graphics';
- Invece del meccanismo NAMED per determinare la possibilità di modifica sicura degli oggetti R dal codice C, è stato adottato un conteggio dei riferimenti, che ha ridotto il numero di operazioni di copia;
- L'implementazione delle espressioni regolari è stata trasferita all'uso della libreria (su piattaforme diverse da Windows, è stata opzionalmente mantenuta la possibilità di compilare con PCRE1);
- Con assertError() e assertWarning() è ora possibile verificare classi specifiche di errori o avvisi;
- In file.path() è stata aggiunta una parziale supporto per la gestione dei percorsi dei file codificati in UTF-8 su sistemi senza locale UTF-8. In caso di impossibilità di tradurre la codifica dei caratteri nei percorsi, ora viene restituito un errore;
- Nella funzione palette() è stata modificata la tavolozza dei colori predefinita. È stata aggiunta la funzione palette.pals() per visualizzare le tavolozze disponibili;
- Nella funzione memDecompress() è stato aggiunto il supporto per il formato RFC 1952 (dati in memoria compressi gzip);
- Sono state aggiunte nuove funzioni: proportions(), marginSums(), .S3method(), list2DF(), infoRDS(), .class2(), deparse1(), R_user_dir(), socketTimeout(), globalCallingHandlers(), tryInvokeRestart() e activeBindingFunction().
Fonte: opennet.ru
