Attualmente ho un progetto in esecuzione su PiCloud che coinvolge più iterazioni di un Risolutore ODE. Ogni iterazione produce una matrice NumPy di circa 30 righe e 1500 colonne, con ciascuna iterazione aggiunta alla fine dell'array dei risultati precedenti.Modi efficienti per scrivere un grande array NumPy su un file
Normalmente, avrei lasciato che questi array abbastanza grandi fossero restituiti dalla funzione, li tenessero in memoria e li gestissero tutti insieme. Tranne PiCloud ha un limite abbastanza restrittivo sulla dimensione dei dati che possono essere restituiti da una funzione, per ridurre i costi di trasmissione. Il che va bene, tranne il fatto che dovrei avviare migliaia di lavori, ognuno dei quali è in esecuzione su iterazione, con un notevole sovraccarico.
Sembra che la soluzione migliore sia scrivere l'output in un file e quindi raccogliere il file utilizzando un'altra funzione che non ha un limite di trasferimento.
La mia scommessa migliore è semplicemente scaricarla in un file CSV? Dovrei aggiungere al file CSV ogni iterazione o tenerlo tutto in un array fino alla fine e poi scrivere una sola volta? C'è qualcosa di terribilmente intelligente che mi manca?
Non c'è davvero un motivo per cui siano leggibili dall'uomo - così abituati a usare i file CSV per spostarsi attorno ai set di dati, dove la precisione non è un fattore (la maggior parte delle cose sono numeri interi). Questo sembra riguardare quello che stavo cercando. – Fomite