Come scaricare e analizzare un file csv in Racket?Come scaricare e analizzare un file csv in Racket?
risposta
Utilizzare get-pure-port
per scaricare il file e utilizzare la libreria per analizzarlo.
L'esempio seguente scarica e analizza un file csv contenente i dati sulla dimensione delle varie isole Galapagos e su quante specie sono state trovate su ciascuna isola.
#lang racket
(require (planet neil/csv:1:=7) net/url)
(define galapagos-url
(string->url
"http://www.stat.washington.edu/~handcock/536/Data/galapagos.csv"))
(define make-galapagos-csv-reader
(make-csv-reader-maker
'((separator-chars #\,)
(strip-leading-whitespace? . #t)
(strip-trailing-whitespace? . #t))))
(define (all-rows url make-reader)
(define next-row (make-reader (get-pure-port url)))
(define (loop)
(define row (next-row))
(if (empty? row)
'()
(cons row (loop))))
(loop))
(all-rows galapagos-url make-galapagos-csv-reader)
Le prime righe restituite sono:
'(("Island"
"Observed.species"
"Native.species"
"Area(km^2)"
"Elevation(m)"
"Distance.nearest.island(km)"
"Distance.Santa.Cruz(km)"
"Area.adj.island(km^2)")
("Baltra" "58" "23" "25.09" "" "0.6" "0.6" "1.84")
("Bartolome" "31" "21" "1.24" "109" "0.6" "26.3" "572.33")
("Caldwell" "3" "3" "0.21" "114" "2.8" "58.7" "0.78")
Questa risposta mi ha fatto in cui stavo cercando di andare, ma ho pensato di carillon per i futuri esploratori intrepidi. C'è un'invocazione più semplice (forse con le versioni più recenti della libreria csv?) Per fare ciò che chiedi. Ciò ovviamente presuppone che si desideri il delimitatore di virgola e che si rimuovano gli spazi bianchi iniziali o finali come nell'esempio precedente.
#lang racket
(require (planet neil/csv:2:0) net/url)
;; Continuing with the UW data sources examples
(define iver-url
(string->url
"http://faculty.washington.edu/cadolph/vis/iver.csv"))
(csv->list (get-pure-port iver-url))
In questa versione, il CSV> funzione di lista crea automaticamente un csv-reader con le impostazioni predefinite di cui sopra. Puoi sovrascrivere i valori predefiniti (ad esempio se avevi un delimitatore diverso o non volevi eliminare il trailing e condurre gli spazi bianchi) passando invece un lettore csv personalizzato costruito con make-csv-reader
a csv->list
.
Neil ha una nuova libreria, lettura csv, quindi usa quello.
primo, installare il pacchetto utilizzando raco:
raco pkg install csv-reading
convertire un file CSV a un elenco, qui è una funzione di supporto:
(require csv-reading)
(define (csvfile->list filename)
(call-with-input-file filename
csv->list))
Per scaricare un file CSV file e convertire in una lista, fare questo:
(require net/url)
((compose csv->list get-pure-port string->url) "http://example.com")
Vedere qui per la libreria di lettura csv: csv-reading library, è l'ultima versione (e le altre risposte utilizzano quelle deprecate).
- 1. come analizzare un file CSV utilizzando PHP
- 2. Come scaricare un array 2D direttamente in un file CSV?
- 3. Come forzare grails per scaricare file csv?
- 4. Come analizzare un file CSV, aggiornare un campo, quindi salvare
- 5. Come scaricare un file temporaneo
- 6. Come scaricare il file csv esportato in Wordpress
- 7. Utilizzo della classe CSV per analizzare un file .csv in Ruby
- 8. Come scaricare file CSV con poltergeist usando Capybara su phantomjs?
- 9. Analizzare un file di testo semplice in un file CSV utilizzando Python
- 10. Come leggere un file CSV una riga alla volta e analizzare le parole chiave
- 11. Richiedi un file csv da scaricare come pop-up usando node.js e node-csv-parser (modulo nodo)
- 12. Analizzare la prima colonna di un file csv in un nuovo file
- 13. Come analizzare il file CSV in un array in Android Studio
- 14. REPL e sottomoduli racket
- 15. Scaricare un file modificando window.location w/Safari
- 16. Come leggere un file CSV utilizzando iOS
- 17. come scaricare un file in java?
- 18. Come scaricare memorystream in un file?
- 19. Come scaricare un file con AFNetworking 2.0
- 20. Come analizzare un file YAML?
- 21. Come analizzare un file JSON?
- 22. Come analizzare un file DOT in Python
- 23. Come analizzare un file Excel in JavaScript?
- 24. richieste usare Python per scaricare CSV
- 25. mmap e file CSV
- 26. Come ottenere un file .csv in R?
- 27. Come scrivere ArrayList in un file csv
- 28. Download di un file CSV in django
- 29. Importazione di un file CSV in Java
- 30. Come utilizzare SQL in un file CSV