Pagina personale di:
Carlo Vecchio
appunti di C#, R, SQL Server, ASP.NET, algoritmi, numeri
Vai ai contenuti

R - Importazione di file dati

R

Importazione di file dati

Importazione di file csv

  • Il package 'utils' già installato con R, contiene già diverse funzioni utili per importare dati da file di tipo csv.
  • Sia dato il file "C:\Temp\dati.csv" contenente i dati seguenti:

Id;Categoria;Valore
1;primo;0.123
2;secondo;0.234
3;primo;0.345
4;secondo;0.456
5;primo;0.567

  • Come di vede il separatore utilizzato è il ";" e la prima riga contiene le intestazioni.
  • Per importare il file utilizzare la funzione read.csv() oppure read.table(). Entrambe restituiscono un dataframe e differiscono nella numerosità di parametri disponibili. La read.csv() è più semplice mentre la read.table() ha maggiori possibilità di parametrizzazione.
  • Notare il parametro 'stringsAsFactors' che se impostato a FALSE fa sì che il campo 'Categoria' sia importato come stringa, se impostato a TRUE invece il campo viene importato come Factor.

# Utilizzo della read.csv().
dati <- read.csv("C:\\temp\\dati.csv", sep = ";", stringsAsFactors = FALSE)
print(dati)
 Id Categoria Valore
1  1     primo  0.123
2  2   secondo  0.234
3  3     primo  0.345
4  4   secondo  0.456
5  5     primo  0.567
str(dati)
'data.frame': 5 obs. of  3 variables:
$ Id       : int  1 2 3 4 5
$ Categoria: chr  "primo" "secondo" "primo" "secondo" ...
$ Valore   : num  0.123 0.234 0.345 0.456 0.567

# Alternativa alla read.csv() è la read.table().
dati <- read.table("C:\\temp\\dati.csv", sep = ";", header = TRUE, stringsAsFactors = FALSE)

Importazione di file Excel xlsx
  • Per importare un file Excel occorre ricorrere a una libreria esterna.
  • Nell'esempio seguente ho utilizzato il pacchetto "xlsx" che va installato e caricato.

# Lettura del file 'Dati.xls', foglio 'Nomi'.
datiExcel <- read.xlsx("Dati.xlsx", sheetName = "Nomi")
print(datiExcel)
 Nome    Cognome Data.di.nascita
1     Leonardo   Da Vinci      15/04/1492
2 Michelangelo Buonarroti      06/03/1475
3      Antonio     Canova      01/11/1757

  • La funzione read.xlsx() ha molti parametri. Con questi si ha la possibilità di indicare quale foglio leggere, per nome o per indice; quali righe leggere; la presenza dell'instestazione ed altri.



© 2020 Carlo Vecchio
Torna ai contenuti