[ Su R (in MaCoSa) ]
Comandi, funzioni, …   File di dati "singoli"   File di coppie "x, y"   File di "tabelle" di dati   Animazioni    Esempietti

Comandi, funzioni, …  curve, curve2, bezier, somprod, curva_impl, pend, daticlas, isto3D
  [vedi ↑ daticlas per analizzare dati già classificati]
File di dati "singoli"  dati_punt, dati_virg, P1, P2, P3, t-arrivi, t-sec, pesomasc, morRapallo, t-telef
File di coppie "x,y"  alimger, alimita, statociv, italia_pe, italia_s1, italia_sa, italia_virg, pioggia, altomas, altofem, ellisse, bilog
File di tabelle di dati  battito, visitleva, pesci, terraria, altezzef, glicem, altxx1950, altxx1990, alt1987, alt1976, pressione, mor2006, mor2006m, mor2006f, mor1881, mor1951, mor1988, mor1990, pop1871, pop1871, pop1921, pop1936, pop1971, alt1987, alt1976, settsess, mondo, alim, pop_ita_2011, pop_lig_2011
Animazioni  cosa
Esempietti  fisica, figura, curve
Altri dati:  ISTAT   Camera di Commercio (GE)   Comune di Genova   Regione Liguria
(come elaborare tabelle dell'Istat)

Se vuoi vedere il testo di un file copia e incolla nella barra degli indirizzi http://macosa.dima.unige.it/R/….txt   o http://macosa.dima.unige.it/R/….R (a seconda dell'estensione del file).  Il file se vuoi, poi, puoi copiarlo sul tuo computer  (la cosa può servire nel caso si usi un computer in una rete scolastica particolarmente protetta che non consenta di caricare temporaneamente neanche file come questi).


Comandi, funzioni, ... da caricare in R
Incolla in R la riga  source(...   e, quando indicato, la riga  aiuto

Se hai copiato i seguenti file sul tuo computer puoi caricarli usare il comando "Source" (o "Sorgente") dal menu File (vedi qui e qui).

### Un file che include i seguenti, da "curve" a "pend" (il file carica automaticamente anche l'help in Html, che puoi visionare anche qui)
source("http://macosa.dima.unige.it/R/r1.R")


# come realizzare facilmente grafici vari (e fare calcolo fraz., risolv. equaz.,...)  (es.)
source("http://macosa.dima.unige.it/R/curve.txt")
[nota su grafici di curve particolari]

# curve in forma parametrica o polare (e rototraslazioni/dilatazioni di curve)  (es.)
source("http://macosa.dima.unige.it/R/curve2.txt")

# disequazioni  (es.)
source("http://macosa.dima.unige.it/R/diseq.txt")

# curve "guidate" da alcuni punti  (es.)
source("http://macosa.dima.unige.it/R/bezier.txt")

# somma e prodotto di interi comunque lunghi
source("http://macosa.dima.unige.it/R/sompro.txt")

# tangente al grafico di una funzione
source("http://macosa.dima.unige.it/R/pend.txt")
aiuto


# grafici di eq. di 2 variabili (ma possono essere realizzati con ↑ "curve")
source("http://macosa.dima.unige.it/R/curva_impl.txt")

# analisi di tabella di dati classificati in intervalli di diversa ampiezza
source("http://macosa.dima.unige.it/R/daticlas.txt")
aiuto


# istogramma tridimensionale di una tabella di dati
source("http://macosa.dima.unige.it/R/isto3D.txt")

# polinomio di Taylor  (es.)
source("http://macosa.dima.unige.it/R/Taylor.R")


File di dati singoli da caricare in R
Incolla in R la riga  readLines(...  e  poi usa scan("...", skip=...)

readLines("http://macosa.dima.unige.it/R/dati_punt.txt",n=2)
# Vedo che sono singoli dati che usano la "." come separatore decimale (OK)
dati <- scan("http://macosa.dima.unige.it/R/dati_punt.txt")
str(dati)


readLines("http://macosa.dima.unige.it/R/dati_virg.txt",n=2)
# Vedo che sono singoli dati che usano la "," come separatore decimale (specifico la cosa)
dati <- scan("http://macosa.dima.unige.it/R/dati_virg.txt",dec=",")
str(dati)


# durata delle oscillazioni di un pendolo
readLines("http://macosa.dima.unige.it/R/P1.txt",n=3)
readLines("http://macosa.dima.unige.it/R/P2.txt",n=3)
readLines("http://macosa.dima.unige.it/R/P3.txt",n=3)

# Vedo che sono dati singoli, separati da "a capo", da " ", da ";". Nel 3º caso devo
# specificare il separatore. In tutti e tre i casi c'è una riga da saltare, con skip=1
A <- scan("http://macosa.dima.unige.it/R/p1.txt",skip=1)
B <- scan("http://macosa.dima.unige.it/R/p2.txt",skip=1)
C <- scan("http://macosa.dima.unige.it/R/p3.txt",skip=1,sep=",")

# poi posso unirli e analizzarli: T <- c(A,B,C); str(T); summary(T); hist(T)

# distanze temporali tra arrivi successivi a uno sportello
readLines("http://macosa.dima.unige.it/R/t-arrivi.txt",n=3)
# Vedo che sono singoli dati interi, e che c'è una riga da saltare
dati <- scan("http://macosa.dima.unige.it/R/t-arrivi.txt", skip=1)
str(dati)

# poi posso analizzarli, ad es. con summary(dati); hist(dati,nclass=20)

# misure (troncate ai cs) della durata di 1 s cronometrata manualmente
readLines("http://macosa.dima.unige.it/R/t-sec.txt",n=3)
# Vedo che sono singoli dati interi, e che c'è una riga da saltare
dati <- scan("http://macosa.dima.unige.it/R/t-sec.txt", skip=1)
str(dati)

# poi posso analizzarli, ad es. con dati <- dati+1/2; summary(dati); hist(dati)

# pesi degli alunni di un corso universitario
readLines("http://macosa.dima.unige.it/R/pesomasc.txt",n=3)
# Vedo che c'è una riga da saltare
dati <- scan("http://macosa.dima.unige.it/R/pesomasc.txt", skip=1)
str(dati)


# eta' di tutti i morti in una parrocchia di Rapallo nel XIX sec
readLines("http://macosa.dima.unige.it/R/morRapallo.txt",n=3)
# Vedo che ci sono 2 righe da saltare
dati <- scan("http://macosa.dima.unige.it/R/morRapallo.txt", skip=2)
str(dati)

# poi posso analizzarli, ad es. con
hist(dati,freq=FALSE); abline(h=axTicks(2),lty=3,col="blue"); summary(dati)

# tempi tra una telefonata e l'altra ad un centralino
readLines("http://macosa.dima.unige.it/R/t-telef.txt",n=4)
# Vedo che ci sono 2 righe da saltare
dati <- scan("http://macosa.dima.unige.it/R/t-telef.txt",skip=2)
str(dati)

# poi posso analizzarli, ad es. con
hist(dati,freq=FALSE); abline(h=axTicks(2),lty=3,col="blue"); summary(dati)


File di coppie "x, y" da caricare in R  (x o y può essere una categoria)
Incolla la riga  readLines(...  e  poi usa read.table("...",skip=…,sep="…")

# Consumo procapite di alcuni generi alimentari
readLines("http://macosa.dima.unige.it/R/alimger.txt",n=5)
# Vedo che sono coppie di dati separati da " " e che ci sono 3 righe di commento inzianti con #
# Posso comandare di saltare 3 righe o no: read.table salta le righe inzianti con #; posso specificare
# che il separatore è lo spazio bianco o no (R in assenza di indicazioni lo fa da solo)
dati <- read.table("http://macosa.dima.unige.it/R/alimger.txt",skip=3,sep=" ")
# ovvero:
dati <- read.table("http://macosa.dima.unige.it/R/alimger.txt")
# la prima colonna sono i dati, la seconda le categorie. Posso fare:
barplot(dati$V1,names.arg=dati$V2,las=2); abline(h=axTicks(2),lty=3)

# dati analoghi: macosa.dima.unige.it/R/alimita.txt

# stato civile nel 1991
readLines("http://macosa.dima.unige.it/R/statociv.txt",n=5)
# Vedo che sono coppie di dati separati da "," e che c'è una riga di commento inziante con #
dati <- read.table("http://macosa.dima.unige.it/R/statociv.txt",sep=",")
# la seconda colonna sono i dati, la prima le categorie. Posso fare:
barplot(dati$V2,names.arg=dati$V1,las=2); abline(h=axTicks(2),lty=3)

# coordinate Italia
readLines("http://macosa.dima.unige.it/R/italia_pe.txt",n=3)
# Vedo che sono coppie di dati separati da ",", e che c'è una riga di commento, inziante con #
# Posso comandare di saltare 1 riga o no: read.table salta sempre le righe inzianti con #
dati <- read.table("http://macosa.dima.unige.it/R/italia_pe.txt",skip=1,sep=",")
# ovvero:
dati <- read.table("http://macosa.dima.unige.it/R/italia_pe.txt",sep=",")
str(dati)

# sono punti, che posso visualizzare con: plot(dati,pch="."); lines(dati)

# dati analoghi: macosa.dima.unige.it/R/italia_si.txt
#                     macosa.dima.unige.it/R/italia_sa.txt

readLines("http://macosa.dima.unige.it/R/italia_virg.txt",n=3)
# Coppie di dati separati da ";", con 1 riga di commento inziante con #, che usano "," come sep. decimale
dati <- read.table("http://macosa.dima.unige.it/R/italia_virg.txt",sep=";",dec=",")
str(dati)


# mm mensili di pioggia a Genova
readLines("http://macosa.dima.unige.it/R/pioggia.txt",n=3)
# Sono dati del tipo "ascissa,ordinata" con 1 riga di commento inziante con #
dati <- read.table("http://macosa.dima.unige.it/R/pioggia.txt",sep=",")
str(dati)

# sono punti, che posso visualizzare con: plot(dati,pch="."); lines(dati)

# record salto in alto
readLines("http://macosa.dima.unige.it/R/altomas.txt",n=3)
# Sono dati del tipo "ascissa,ordinata" con 1 riga di commento inziante con '
# Devo fare saltare la riga con skip
dati <- read.table("http://macosa.dima.unige.it/R/altomas.txt",sep=",",skip=1)
str(dati)

# sono punti, che posso visualizzare con: plot(dati); lines(dati)

# dati analoghi: macosa.dima.unige.it/R/altofem.txt

# x ed y (cercare rette di regressione e assi principali)
readLines("http://macosa.dima.unige.it/R/ellisse.txt",n=3)
# Sono dati del tipo "ascissa ordinata" con 1 riga di commento inziante con #
dati <- read.table("http://macosa.dima.unige.it/R/ellisse.txt")
str(dati)


# x ed y (capire l'andamento)
readLines("http://macosa.dima.unige.it/R/bilog.txt",n=4)
# Sono dati del tipo "ascissa, ordinata" con 1 riga di commento inziante con #
dati <- read.table("http://macosa.dima.unige.it/R/bilog.txt",sep=",")
str(dati)

plot(dati); abline(h=axTicks(2),v=axTicks(1),lty=3)
# rappresento i punti in scala bilogaritmica, e poi evidenzio solo quelli finali, per vedere se tendono
# a disporsi lungo una retta (di quale coeff. direttivo?) per capire se l'andamento è polinomiale
dev.new(); plot(log(dati)); abline(h=axTicks(2),v=axTicks(1),lty=3)
dati2 <- dati[10:21,1:2]
dev.new(); plot(log(dati2)); abline(h=axTicks(2),v=axTicks(1),lty=3)


File di tabelle di dati da caricare in R
Incolla la riga  readLines(...  e  poi usa read.table("...",skip=…,sep="…")

# indagine sugli studenti di un corso universitario
readLines("http://macosa.dima.unige.it/R/battito.txt",n=11)
# Vedo che si sono righe di commento inzianti con # e 1 riga di intestazioni
# I dati sono separati da ","
dati <- read.table("http://macosa.dima.unige.it/R/battito.txt",sep=",",header=TRUE)
str(dati)


# dati relativi a visite di leva (1997)
readLines("http://macosa.dima.unige.it/R/visitleva.txt",n=11)
# Vedo che si sono righe di commento inzianti con # e 1 riga di intestazioni
# I dati sono separati da ";"
dati <- read.table("http://macosa.dima.unige.it/R/visitleva.txt",sep=";",header=TRUE)
str(dati)


# allevamento di pesci
readLines("http://macosa.dima.unige.it/R/pesci.txt",n=10)
# Vedo che si sono righe di commento inzianti con # e 1 riga di intestazioni
# I dati sono separati da ";"
dati <- read.table("http://macosa.dima.unige.it/R/pesci.txt",sep=";",header=TRUE)
str(dati)


# distanza in linea d'aria e lungo la strada
readLines("http://macosa.dima.unige.it/R/terraria.txt",n=10)
# Vedo che si sono righe di commento inzianti con # e 1 riga di intestazioni
# I dati sono separati da ";"
dati <- read.table("http://macosa.dima.unige.it/R/terraria.txt",sep=";",header=TRUE)
str(dati)

# come iniziare l'analisi dei dati ...
dati; plot(c(0,max(dati$aria)),c(0,max(dati$strada)),type="n",xlab="", ylab="")
points(dati); abline(h=axTicks(2),v=axTicks(1),lty=3,col="blue")


# altezze di ragazze
readLines("http://macosa.dima.unige.it/R/altezzef.txt",n=5)
# sono coppie "dato frequenza" separate da uno spazio bianco; c'è una riga
# di commento iniziante con #;  posso usare sep=" " o niente:
dati <- read.table("http://macosa.dima.unige.it/R/altezzef.txt")
str(dati)

# per studiarli statisticamente posso ripetere ogni dato tante volte quanta
# la sua frequenza: datit <- rep(dati$V1,dati$V2); hist(datit)

# precisione con cui viene rilevato il tasso glicemico del sangue
readLines("http://macosa.dima.unige.it/R/glicem.txt",n=5)
# sono coppie "dato frequenza" separate da uno spazio bianco; c'è una riga
# di commento iniziante con #;  posso usare sep=" " o niente:
dati <- read.table("http://macosa.dima.unige.it/R/glicem.txt")
str(dati)

# per studiarli posso ripetere ogni dato tante volte quanta la sua frequenza:
datit <- rep(dati$V1,dati$V2)
# posso tracciare l'istogramma con intervalli centrati nei dati:
hist(datit, seq(73.5,81.5,1),probability=TRUE,col="yellow"); abline(h=axTicks(2),lty=3)

# altezze in cm di 20enni nel 1950 nel paese xx; misure troncate agli interi
readLines("http://macosa.dima.unige.it/R/altxx1950.txt",n=5)
# sono coppie "dato, frequenza" separate da ","; devo aggiungere 1/2 in modo
# da avere valori arrotondati invece che troncati
dati <- read.table("http://macosa.dima.unige.it/R/altxx1950.txt",sep=",")
datit <- rep(dati$V1+1/2,dati$V2)
str(datit); summary(datit); hist(datit); abline(h=axTicks(2),lty=3)


# dati analoghi:   macosa.dima.unige.it/R/altxx1990.txt

# altezze ventenni maschi nel 1987
readLines("http://macosa.dima.unige.it/R/alt1987.txt",n=4)
# sono coppie "estremo1 freq1",.. ,"estremoN 0" separate da uno spazio bianco con
# freqI frequenza dell'intervallo [ estremoI,estremo(I+1) )
dati <- read.table("http://macosa.dima.unige.it/R/alt1987.txt")
# analizzo i dati con daticlas.txt:
str(dati); interv <- dati$V1; freq <- dati$V2[1:length(interv)-1]
source("http://macosa.dima.unige.it/R/daticlas.txt")


# dati analoghi:   macosa.dima.unige.it/R/alt1976.txt

# pressione massima in un gruppo di maschi adulti
readLines("http://macosa.dima.unige.it/R/pressione.txt",n=4)
# sono coppie "estremo1,freq1",.. ,"estremoN,0" separate da una virgola con
# freqI frequenza dell'intervallo [ estremoI,estremo(I+1) )
dati <- read.table("http://macosa.dima.unige.it/R/pressione.txt",sep=",")
# analizzo i dati con daticlas.txt:
str(dati); interv <- dati$V1; freq <- dati$V2[1:length(interv)-1]
source("http://macosa.dima.unige.it/R/daticlas.txt")


# morti in Italia nel 2006
readLines("http://macosa.dima.unige.it/R/mor2006.txt",n=4)
# sono coppie "estremo1, freq1",.. ,"estremoN, 0" separate da una virgola con
# freqI frequenza dell'intervallo [ estremoI,estremo(I+1) )
dati <- read.table("http://macosa.dima.unige.it/R/mor2006.txt", sep=",")
# analizzo i dati con daticlas.txt:
str(dati); interv <- dati$V1; freq <- dati$V2[1:length(interv)-1]
source("http://macosa.dima.unige.it/R/daticlas.txt")


# dati analoghi (maschi): macosa.dima.unige.it/R/mor2006m.txt
# dati analoghi (femmine): macosa.dima.unige.it/R/mor2006f.txt
# morti in Italia nel 1881-90: macosa.dima.unige.it/R/mor1881.txt
# morti in Italia nel 1951: macosa.dima.unige.it/R/mor1951.txt
# morti in Italia nel 1988: macosa.dima.unige.it/R/mor1988.txt
# morti in Italia nel 1990: macosa.dima.unige.it/R/mor1990.txt
# posso confrontarli tutti con: boxplot(dati1,dati2,...,horizontal=TRUE,range=0)

# dati simili; popolazione italiana in vari anni:
  macosa.dima.unige.it/R/pop1871.txt
  macosa.dima.unige.it/R/pop1921.txt
  macosa.dima.unige.it/R/pop1936.txt
  macosa.dima.unige.it/R/pop1951.txt
  macosa.dima.unige.it/R/pop1971.txt

# dati simili; altezza popolazione maschile italiana in vari anni:
  macosa.dima.unige.it/R/alt1987.txt
  macosa.dima.unige.it/R/alt1976.txt

# Occupati in Italia per settore e sesso
readLines("http://macosa.dima.unige.it/R/settsess.txt",n=6)
# è una tabella di contingenza, che posso caricare con:
dati <- read.table("http://macosa.dima.unige.it/R/settsess.txt")
# e analizzare con: dati; prop.table(dati)*100; ...

# Nel 1999, dati su nascite e durata di vita
readLines("http://macosa.dima.unige.it/R/mondo.txt",n=5)
# è una tabella con dati separati da ',' (e intestazioni) che posso caricare con:
dati <- read.table("http://macosa.dima.unige.it/R/mondo.txt", sep=",")
# e analizzare con: dati; cor(dati); ...

# consumo annuale medio di generi alimentari da parte di categorie diverse
readLines("http://macosa.dima.unige.it/R/alim.txt",n=5)
# è una tabella con dati separati da ' ' (e intestazioni) che posso caricare con:
dati <- read.table("http://macosa.dima.unige.it/R/alim.txt",,header=TRUE)
dati


# Popolazione italiana ai censimenti
readLines("http://macosa.dima.unige.it/R/pop_ita_2011.txt",n=5)
# è una tabella con dati separati da ',' (e intestazioni) che posso caricare con:
dati <- read.table("http://macosa.dima.unige.it/R/pop_ita_2011.txt",sep=",",header=TRUE)
dati

# tabella analoga:
readLines("http://macosa.dima.unige.it/R/pop_lig_2011.txt",n=5)
# vedi QUI come analizzare questi dati
 

Animazioni
Incolla in R la riga  source(...

# Osserva la figura e stabilisci che cosa è:
source("http://macosa.dima.unige.it/R/cosa.txt")

Esempi
Copia e Incolla...

# Come fare una sequenza di calcoli. Esempio riferito alla fisica. Clicca.
# Una figura, usando curve.txt. Clicca.
# Alcune curve usando curva_impl.txt. Clicca.