Ho alcuni dati che è 1 o 2 dimensionale. Voglio scorrere ogni modello nel set di dati ed eseguire foo () su di esso. Se i dati sono 1D quindi aggiungere questo valore a un elenco, se è in 2D poi prendere la media della lista interna e di aggiunta di questo valore. Ho visto questa domanda , e ha deciso di implementarlo controllando per esempio di un elenco. Non posso usare NumPy per questa applicazione.
outputs = []
for row in data:
if isinstance(row, list):
vals = [foo(window) for window in row]
outputs.append(sum(vals)/float(len(vals)))
else:
outputs.append(foo(row))
C'è un modo più ordinato di fare questo? Su ogni corsa, ogni modello avrà la stessa dimensionalità, così ho potuto fare una classe separata per 1D / 2D, ma che aggiungerà un sacco di classi al mio codice. I set di dati possono ottenere abbastanza grande in modo da una soluzione rapida è preferibile.