Esempi di statistica descrittiva e inferenziale/Ricerca di esopianeti

Indice del libro

Caricamento librerieModifica

 library(dplyr)
 library(ggplot2)
 library(scales)

Parte 1: DatiModifica

Il Kepler Space Observatory è un satellite costruito dalla NASA lanciato nel 2009. Il telescopio è dedicato alla ricerca di esopianeti con sistemi stellari simili al nostro, in modo da trovare possibilmente altri pianeti abitabili come il nostro. La missione originale si è conclusa nel 2013 a causa di guasti meccanici, ma il telescopio è comunque funzionante dal 2014 su una missione estesa "K2".

Il dataset scaricabile da qui : https://www.kaggle.com/nasa/kepler-exoplanet-search-results contiene variabili relative a 9564 "oggetti di interesse" osservati da Kepler che potrebbero essere esopianeti candidati .

Le variabili prese in considerazione sono:

  • kepoi_name: Nome di un oggetto astrofisico identificato da Kepler che sembra coerente con un'ipotesi di transito planetario
  • kepler_name: Nomi di oggetti astrofisici che si considerano confermati o convalidati come pianeti, un passo avanti rispetto alla designazione di pianeta candidato .
  • koi_disposition: la valutazione in letteratura verso questo esopianeta candidato che può assumere i valori CANDIDATO, FALSO POSITIVO o CONFERMATO.
  • koi_pdisposition: la valutazione che Kepler da nei confronti di questo esopianeta candidato che può assumere i valori FALSO POSITIVO o CANDIDATO.
  • koi_score: un valore compreso tra 0 e 1 che indica il livello di fiducia nella valutazione data da Kepler. Per i CANDIDATI, un valore più alto indica più fiducia nella sua valutazione, mentre per i FALSI POSITIVI, un valore più alto indica meno fiducia in quella valutazione.

Caricamento dati:

cumulative <- read.csv("cumulative.csv" , stringsAsFactors = TRUE)

Traduzione in italiano delle variabili di interesse:

df <-cumulative[,c(4,5,6,7)]
dimnames(df)[2] <- list(c("nome_esopianeta","valutazione_letteratura","valutazione_Kepler","punteggio"))

Parte 2 : Esplorazione datiModifica

Come si vede dalla funzione dim gli oggetti astrofisici contenuti nel dataset sono 9564

dim(df)
[1] 9564    4

Come si vede dalla funzione Summary dei 9564 oggetti soltanto 2289 hanno un nome che inizia con Kepler, poi si vedono i totali considerati Candidate, Confirmed o False Positive in letteratura e i totali di candidate e false positive considerati da Kepler e il punteggio che assume valori tra 0 e 1 con una mediana di 0,33 e una media di 0,48.

summary(df)
  nome_esopianeta   valutazione_letteratura
            :7270   CANDIDATE     :2248      
Kepler-1 b  :   1   CONFIRMED     :2293      
Kepler-10 b :   1   FALSE POSITIVE:5023      
Kepler-10 c :   1                            
Kepler-100 b:   1                            
Kepler-100 c:   1                            
(Other)     :2289                            

    valutazione_Kepler   punteggio     
CANDIDATE     :4496     Min.   :0.0000  
FALSE POSITIVE:5068     1st Qu.:0.0000  
                        Median :0.3340  
                        Mean   :0.4808  
                        3rd Qu.:0.9980  
                        Max.   :1.0000  
                        NA's   :1510

Dal seguente grafico si vede che gli oggetti considerati da Kepler candidati ad essere esopianeti sono in letteratura per metà considerati candidati e per metà confermati. Mentre gli oggetti considerati falsi positivi da Kepler sono considerati per la quasi totalità falsi positivi in letteratura ma una minima parte considerata confermata ad essere esopianeti in letteratura è considerata falso positivo da Kepler :


df %>%
  ggplot(aes(valutazione_Kepler,fill=valutazione_letteratura)) +
  geom_bar(aes(y=(..count../sum(..count..))))+
  scale_y_continuous(labels = percent_format())+
  ylab("Percentuale di esopianeti") +
  xlab("Giudizio di Kepler ") +
  ggtitle("Percentuale di esopianeti secondo Kepler e la letteratura")

Calcolo totale e percentuale di candidati in letteratura e candidati per Kepler :

df %>%
  filter(valutazione_letteratura=="CANDIDATE",valutazione_Kepler=="CANDIDATE") %>%
summarise(totale=n(), percentuale=totale*100/nrow(cumulative))
totale  percentuale
2248	23.50481		


Calcolo totale e percentuale di confermati in letteratura e candidati per Kepler :

df %>%
  filter(valutazione_letteratura=="CONFIRMED",valutazione_Kepler=="CANDIDATE") %>%
summarise(totale=n(), percentuale=totale*100/nrow(cumulative))
totale  percentuale
2248	23.50481		


df %>%
 filter(nome_esopianeta!="",valutazione_letteratura=="CONFIRMED",valutazione_Kepler=="CANDIDATE") %>%
  select(nome_esopianeta,valutazione_letteratura,valutazione_Kepler,punteggio) %>%
  head()
  nome_esopianeta valutazione_letteratura valutazione_Kepler punteggio
1    Kepler-227 b               CONFIRMED          CANDIDATE     1.000
2    Kepler-227 c               CONFIRMED          CANDIDATE     0.969
5    Kepler-664 b               CONFIRMED          CANDIDATE     1.000
6    Kepler-228 d               CONFIRMED          CANDIDATE     1.000
7    Kepler-228 c               CONFIRMED          CANDIDATE     1.000
8    Kepler-228 b               CONFIRMED          CANDIDATE     0.992


Calcolo totale e percentuale di falsi positivi in letteratura e falsi positivi per Kepler :

df %>%
  filter(valutazione_Kepler=="FALSE POSITIVE",valutazione_letteratura=="FALSE POSITIVE") %>%
summarise(totale=n(), percentuale=totale*100/nrow(cumulative))
totale  percentuale
5023	 52.51987	

Calcolo totale e percentuale di confermati in letteratura e falsi positivi per Kepler :


df %>%
  filter(valutazione_letteratura=="CONFIRMED",valutazione_Kepler=="FALSE POSITIVE") %>%
summarise(totale=n(), percentuale=totale*100/nrow(cumulative))
totale  percentuale
45	     0.4705144	
df %>%
  filter(nome_esopianeta!="",valutazione_letteratura=="CONFIRMED",valutazione_Kepler=="FALSE POSITIVE") %>%
  select(nome_esopianeta,valutazione_letteratura,valutazione_Kepler,punteggio) %>%
  head()
    nome_esopianeta valutazione_letteratura valutazione_Kepler punteggio
219    Kepler-247 d               CONFIRMED     FALSE POSITIVE     0.000
235    Kepler-110 b               CONFIRMED     FALSE POSITIVE     0.415
651     Kepler-42 c               CONFIRMED     FALSE POSITIVE     0.000
676     Kepler-56 b               CONFIRMED     FALSE POSITIVE     0.098
756    Kepler-420 b               CONFIRMED     FALSE POSITIVE     0.117
774    Kepler-854 b               CONFIRMED     FALSE POSITIVE     0.041

ConclusioniModifica

Ci sono ben 2248 oggetti astrofisici pari al 23,50% confermati in letteratura e candidati per Kepler ad essere esopianeti e 45 oggetti astrofisici pari allo 0,47% confermati in letteratura ad essere esopianeti ma falsi positivi per Kepler.