Pingul commited on
Commit
285efed
·
verified ·
1 Parent(s): 8825ac8

Update models/responses.py

Browse files
Files changed (1) hide show
  1. models/responses.py +56 -46
models/responses.py CHANGED
@@ -11,105 +11,115 @@ class PredictResponse(BaseModel):
11
  engineered: Dict[str, Optional[float]]
12
 
13
 
14
- # Modelos para los datasets de NASA
15
  class ExoplanetCumulative(BaseModel):
16
- """Modelo para exoplanetas del dataset Cumulative (Kepler)"""
 
17
  kepid: Optional[int] = None
18
  kepoi_name: Optional[str] = None
19
  kepler_name: Optional[str] = None
 
 
20
  koi_disposition: Optional[str] = None
21
  koi_pdisposition: Optional[str] = None
22
- koi_score: Optional[float] = None # Score de confianza (0-1)
23
 
24
- # 11 características esenciales
25
  koi_period: Optional[float] = None # Periodo orbital (días)
 
 
26
  koi_duration: Optional[float] = None # Duración del tránsito (horas)
27
  koi_depth: Optional[float] = None # Profundidad del tránsito (ppm)
28
- koi_impact: Optional[float] = None # Parámetro de impacto
29
  koi_prad: Optional[float] = None # Radio del planeta (radios terrestres)
30
- koi_slogg: Optional[float] = None # Gravedad superficial estelar (log10(cm/s²))
31
  koi_sma: Optional[float] = None # Semi-eje mayor (AU)
32
- koi_smet: Optional[float] = None # Metalicidad estelar [Fe/H]
33
- koi_srad: Optional[float] = None # Radio estelar (radios solares)
34
- koi_steff: Optional[float] = None # Temperatura efectiva estelar (K)
35
- koi_snr: Optional[float] = None # Relación señal-ruido
36
 
37
- # Características orbitales adicionales
38
- koi_eccen: Optional[float] = None # Excentricidad orbital
39
- koi_incl: Optional[float] = None # Inclinación orbital (grados)
40
  koi_dor: Optional[float] = None # Distancia planeta-estrella / radio estelar
41
  koi_ror: Optional[float] = None # Radio planeta / radio estrella
 
 
42
 
43
- # Características estelares adicionales
 
 
 
44
  koi_smass: Optional[float] = None # Masa estelar (masas solares)
45
- koi_kepmag: Optional[float] = None # Magnitud en banda Kepler
46
-
47
- # Flujo y temperatura
48
- koi_insol: Optional[float] = None # Flujo de insolación (flujo terrestre)
49
- koi_teq: Optional[float] = None # Temperatura de equilibrio (K)
50
 
51
- # Coordenadas
52
- ra: Optional[float] = None # Ascensión recta
53
- dec: Optional[float] = None # Declinación
54
 
55
 
56
  class ExoplanetK2(BaseModel):
57
- """Modelo para exoplanetas del dataset K2"""
 
58
  pl_name: Optional[str] = None
59
  hostname: Optional[str] = None
60
- k2_name: Optional[str] = None
61
  epic_hostname: Optional[str] = None
 
 
 
 
62
  disposition: Optional[str] = None
63
  discoverymethod: Optional[str] = None
64
  disc_year: Optional[int] = None
65
 
66
- # IDs y nombres alternativos
67
- # hd_name y hip_name eliminados (>95% nulos en primeras 100 filas)
68
- tic_id: Optional[str] = None # TESS Input Catalog ID
69
- gaia_id: Optional[str] = None # Gaia DR2/DR3 ID
70
-
71
- # Datos del planeta para visualización
72
  pl_orbper: Optional[float] = None # Periodo orbital (días)
73
  pl_rade: Optional[float] = None # Radio del planeta (radios terrestres)
74
- pl_eqt: Optional[float] = None # Temperatura de equilibrio (K)
75
- pl_orbincl: Optional[float] = None # Inclinación orbital (grados)
 
 
 
76
 
77
- # Datos estelares
78
  st_teff: Optional[float] = None # Temperatura efectiva estelar (K)
79
  st_rad: Optional[float] = None # Radio estelar (radios solares)
80
  st_mass: Optional[float] = None # Masa estelar (masas solares)
81
  st_met: Optional[float] = None # Metalicidad estelar [Fe/H]
82
  st_logg: Optional[float] = None # Gravedad superficial estelar
83
- st_dens: Optional[float] = None # Densidad estelar (g/cm³)
84
- st_lum: Optional[float] = None # Luminosidad estelar (luminosidades solares)
85
- # pl_orbsmax, pl_bmasse, pl_bmassj, pl_dens, pl_orbeccen, pl_insol, st_age eliminados (>95% nulos en primeras 100 filas)
86
 
87
- # Datos del sistema
88
  sy_dist: Optional[float] = None # Distancia al sistema (parsecs)
89
  sy_vmag: Optional[float] = None # Magnitud V
90
  sy_kmag: Optional[float] = None # Magnitud K
 
 
91
  sy_gaiamag: Optional[float] = None # Magnitud Gaia
92
 
93
- # Coordenadas
94
  ra: Optional[float] = None
95
  dec: Optional[float] = None
96
 
97
 
98
  class ExoplanetTOI(BaseModel):
99
- """Modelo para exoplanetas del dataset TESS Objects of Interest (TOI)"""
 
100
  toi: Optional[float] = None
101
  tid: Optional[int] = None # TESS Input Catalog ID
102
  ctoi_alias: Optional[str] = None
 
 
103
  tfopwg_disp: Optional[str] = None # Disposición del grupo de trabajo
104
  pl_pnum: Optional[int] = None # Número de planetas en el sistema
105
 
106
- # Datos del planeta para visualización
107
  pl_orbper: Optional[float] = None # Periodo orbital (días)
108
  pl_rade: Optional[float] = None # Radio del planeta (radios terrestres)
109
  pl_eqt: Optional[float] = None # Temperatura de equilibrio (K)
110
- # pl_insol, pl_trandep, pl_trandur, pl_trandurh, pl_imppar, pl_orbsmax eliminados (>95% nulos en primeras 100 filas)
 
 
 
 
 
111
 
112
- # Datos estelares
113
  st_teff: Optional[float] = None # Temperatura efectiva estelar (K)
114
  st_rad: Optional[float] = None # Radio estelar (radios solares)
115
  st_mass: Optional[float] = None # Masa estelar (masas solares)
@@ -118,15 +128,15 @@ class ExoplanetTOI(BaseModel):
118
  st_dist: Optional[float] = None # Distancia (parsecs)
119
  st_tmag: Optional[float] = None # Magnitud TESS
120
 
121
- # Movimiento propio
122
  st_pmra: Optional[float] = None # Movimiento propio en ascensión recta (mas/yr)
123
  st_pmdec: Optional[float] = None # Movimiento propio en declinación (mas/yr)
124
 
125
- # Coordenadas
126
  ra: Optional[float] = None
127
  dec: Optional[float] = None
128
- rastr: Optional[str] = None # Ascensión recta (string)
129
- decstr: Optional[str] = None # Declinación (string)
130
 
131
 
132
  class DatasetListResponse(BaseModel):
 
11
  engineered: Dict[str, Optional[float]]
12
 
13
 
14
+ # Modelos para los datasets de NASA (Solo columnas con ≤50% nulos)
15
  class ExoplanetCumulative(BaseModel):
16
+ """Modelo para exoplanetas del dataset Cumulative (Kepler) - Solo datos reales"""
17
+ # Identificadores (0% nulos)
18
  kepid: Optional[int] = None
19
  kepoi_name: Optional[str] = None
20
  kepler_name: Optional[str] = None
21
+
22
+ # Disposición y clasificación (0% nulos)
23
  koi_disposition: Optional[str] = None
24
  koi_pdisposition: Optional[str] = None
25
+ koi_score: Optional[float] = None
26
 
27
+ # Características orbitales esenciales (0% nulos)
28
  koi_period: Optional[float] = None # Periodo orbital (días)
29
+ koi_time0bk: Optional[float] = None # Tiempo de referencia (BJD)
30
+ koi_impact: Optional[float] = None # Parámetro de impacto
31
  koi_duration: Optional[float] = None # Duración del tránsito (horas)
32
  koi_depth: Optional[float] = None # Profundidad del tránsito (ppm)
 
33
  koi_prad: Optional[float] = None # Radio del planeta (radios terrestres)
 
34
  koi_sma: Optional[float] = None # Semi-eje mayor (AU)
 
 
 
 
35
 
36
+ # Parámetros derivados (0-1% nulos)
37
+ koi_teq: Optional[float] = None # Temperatura de equilibrio (K)
38
+ koi_insol: Optional[float] = None # Flujo de insolación (flujo terrestre)
39
  koi_dor: Optional[float] = None # Distancia planeta-estrella / radio estelar
40
  koi_ror: Optional[float] = None # Radio planeta / radio estrella
41
+ koi_eccen: Optional[float] = None # Excentricidad orbital
42
+ koi_incl: Optional[float] = None # Inclinación orbital (grados)
43
 
44
+ # Características estelares (0-2% nulos)
45
+ koi_steff: Optional[float] = None # Temperatura efectiva estelar (K)
46
+ koi_slogg: Optional[float] = None # Gravedad superficial estelar
47
+ koi_srad: Optional[float] = None # Radio estelar (radios solares)
48
  koi_smass: Optional[float] = None # Masa estelar (masas solares)
49
+ koi_smet: Optional[float] = None # Metalicidad estelar [Fe/H]
50
+ koi_kepmag: Optional[float] = None # Magnitud Kepler
 
 
 
51
 
52
+ # Coordenadas (0% nulos)
53
+ ra: Optional[float] = None
54
+ dec: Optional[float] = None
55
 
56
 
57
  class ExoplanetK2(BaseModel):
58
+ """Modelo para exoplanetas del dataset K2 - Solo datos reales (≤50% nulos)"""
59
+ # Identificadores (0% nulos)
60
  pl_name: Optional[str] = None
61
  hostname: Optional[str] = None
 
62
  epic_hostname: Optional[str] = None
63
+ tic_id: Optional[str] = None
64
+ gaia_id: Optional[str] = None
65
+
66
+ # Clasificación y descubrimiento (0% nulos)
67
  disposition: Optional[str] = None
68
  discoverymethod: Optional[str] = None
69
  disc_year: Optional[int] = None
70
 
71
+ # Datos del planeta (0-50% nulos)
 
 
 
 
 
72
  pl_orbper: Optional[float] = None # Periodo orbital (días)
73
  pl_rade: Optional[float] = None # Radio del planeta (radios terrestres)
74
+ pl_radj: Optional[float] = None # Radio del planeta (radios jovianos)
75
+ pl_trandep: Optional[float] = None # Profundidad del tránsito (%)
76
+ pl_trandur: Optional[float] = None # Duración del tránsito (horas)
77
+ pl_tranmid: Optional[float] = None # Tiempo medio del tránsito (BJD)
78
+ pl_imppar: Optional[float] = None # Parámetro de impacto (≤50% nulos)
79
 
80
+ # Datos estelares (0-50% nulos)
81
  st_teff: Optional[float] = None # Temperatura efectiva estelar (K)
82
  st_rad: Optional[float] = None # Radio estelar (radios solares)
83
  st_mass: Optional[float] = None # Masa estelar (masas solares)
84
  st_met: Optional[float] = None # Metalicidad estelar [Fe/H]
85
  st_logg: Optional[float] = None # Gravedad superficial estelar
 
 
 
86
 
87
+ # Datos del sistema (0-50% nulos)
88
  sy_dist: Optional[float] = None # Distancia al sistema (parsecs)
89
  sy_vmag: Optional[float] = None # Magnitud V
90
  sy_kmag: Optional[float] = None # Magnitud K
91
+ sy_jmag: Optional[float] = None # Magnitud J
92
+ sy_hmag: Optional[float] = None # Magnitud H
93
  sy_gaiamag: Optional[float] = None # Magnitud Gaia
94
 
95
+ # Coordenadas (0% nulos)
96
  ra: Optional[float] = None
97
  dec: Optional[float] = None
98
 
99
 
100
  class ExoplanetTOI(BaseModel):
101
+ """Modelo para exoplanetas del dataset TESS Objects of Interest (TOI) - Solo datos reales"""
102
+ # Identificadores (0% nulos)
103
  toi: Optional[float] = None
104
  tid: Optional[int] = None # TESS Input Catalog ID
105
  ctoi_alias: Optional[str] = None
106
+
107
+ # Clasificación (0% nulos)
108
  tfopwg_disp: Optional[str] = None # Disposición del grupo de trabajo
109
  pl_pnum: Optional[int] = None # Número de planetas en el sistema
110
 
111
+ # Datos del planeta (0% nulos)
112
  pl_orbper: Optional[float] = None # Periodo orbital (días)
113
  pl_rade: Optional[float] = None # Radio del planeta (radios terrestres)
114
  pl_eqt: Optional[float] = None # Temperatura de equilibrio (K)
115
+ pl_insol: Optional[float] = None # Flujo de insolación (flujo terrestre)
116
+ pl_trandep: Optional[float] = None # Profundidad del tránsito (ppm)
117
+ pl_trandurh: Optional[float] = None # Duración del tránsito (horas)
118
+ pl_tranmid: Optional[float] = None # Tiempo medio del tránsito (BJD)
119
+ pl_imppar: Optional[float] = None # Parámetro de impacto
120
+ pl_orbsmax: Optional[float] = None # Semi-eje mayor (AU)
121
 
122
+ # Datos estelares (0-3% nulos)
123
  st_teff: Optional[float] = None # Temperatura efectiva estelar (K)
124
  st_rad: Optional[float] = None # Radio estelar (radios solares)
125
  st_mass: Optional[float] = None # Masa estelar (masas solares)
 
128
  st_dist: Optional[float] = None # Distancia (parsecs)
129
  st_tmag: Optional[float] = None # Magnitud TESS
130
 
131
+ # Movimiento propio (0% nulos)
132
  st_pmra: Optional[float] = None # Movimiento propio en ascensión recta (mas/yr)
133
  st_pmdec: Optional[float] = None # Movimiento propio en declinación (mas/yr)
134
 
135
+ # Coordenadas (0% nulos)
136
  ra: Optional[float] = None
137
  dec: Optional[float] = None
138
+ rastr: Optional[str] = None
139
+ decstr: Optional[str] = None
140
 
141
 
142
  class DatasetListResponse(BaseModel):