[Python] Algoritmo in CSV
Manuele
amicogodzilla a bruttocarattere.org
Ven 3 Set 2010 10:51:30 CEST
On 02/09/2010 14:41, Vittorio Zuccala' wrote:
> Buongiorno,
> chiedo consiglio su un algoritmo da usare che sia veloce.
> Anche solo in meta-codice.
>
> Problema:
> - carico un CSV con 200 colonne e 2 milioni di righe
> - voglio trovare la lunghezza maggiore per ogni campo
>
> Meta-codice
> * apri file csv
> * crea un oggetto csv_reader
> * crea un array "lunghezzamax"
> * leggi riga per riga
> * fai lo split dei campi e metti nell'array "campi"
> * per ogni campo guarda la lunghezza: se lunghezza(campi[i]) >
> lunghezza[i] allora lunghezza[i]=lunghezza(campi[i])
butto lì anche la mia... forse sarebbe meglio delegare il confronto il
più possibile a funzioni del tipo min max su vettori immagino già di per
sé ottimizzate. Leggerei quindi tutto il file o porzioni di esso
memorizzando le colonne in vettori da passare alla funzione min().
"Porzioni di" per evitare al limite ingombri eccessivi di memoria
relegando allora il confronto solo tra minimi delle porzioni già analizzate.
Spero di essere stato chiaro... e utile... perché potrei aver detto robe
inutili oltreché contorte.
ciao
Manuele
>
> Ecco: il mio problema è che vengono effettuati 200*2.000.000 di IF e la
> cosa non mi piace molto.
> Qualcuno ha un consiglio per ottimizzare?
>
> Grazie in anticipo.
>
>
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
Maggiori informazioni sulla lista
Python