pande

Pandas read_csv Vadnica

Pandas read_csv Vadnica

Pande .read_csv

O neki zgodovini in uporabi pand knjižnice Python sem že razpravljal.  pandas je bil zasnovan zaradi potrebe po učinkoviti knjižnici za analizo in manipulacijo finančnih podatkov za Python.  Za nalaganje podatkov za analizo in manipulacijo pande ponujajo dve metodi, DataReader in read_csv.  Tu sem zajel prvo.  Slednje je predmet te vaje.

.read_csv

V spletu obstaja veliko število brezplačnih skladišč podatkov, ki vključujejo informacije na različnih področjih.  Nekatere od teh virov sem vključil v spodnji odsek za reference.  Ker sem predstavil vgrajene API-je za učinkovito vlečenje finančnih podatkov sem, bom v tej vadnici uporabil še en vir podatkov.

Podatki.gov ponuja veliko izbiro brezplačnih podatkov o vsem, od podnebnih sprememb do U.S. statistika proizvodnje.  Za uporabo v tej vadnici sem prenesel dva nabora podatkov.  Prva je povprečna dnevna najvišja temperatura za okrožje Bay na Floridi. Ti podatki so bili preneseni iz U.S. Priročnik o podnebni odpornosti za obdobje od 1950 do danes.

Druga je raziskava blagovnih tokov, ki meri način in obseg uvoza v državo v obdobju 5 let.

Obe povezavi za ta niz podatkov sta na voljo v spodnjem razdelku sklicev.  The .read_csv metoda, kot je razvidno iz imena, bo te podatke naložila iz datoteke CSV in ustvarila datoteko DataFrame iz tega nabora podatkov.

Uporaba

Vsakič, ko uporabljate zunanjo knjižnico, morate Pythonu povedati, da jo je treba uvoziti.  Spodaj je vrstica kode, ki uvozi knjižnico pand.

uvozi pande kot pd

Osnovna uporaba .read_csv metoda spodaj.  To ustvari in zapolni a DataFrame df z informacijami v datoteki CSV.

df = pd.read_csv ('12005-letna-zgodovina-obs-tasmax.csv ')

Če dodamo še nekaj vrstic, lahko pregledamo prvih in zadnjih 5 vrstic iz novo ustvarjenega DataFrame.

df = pd.read_csv ('12005-letna-zgodovina-obs-tasmax.csv ')
tiskanje (df.glava (5))
tiskanje (df.rep (5))

Koda je naložila stolpec za leto, povprečno dnevno temperaturo v Celzijusu (tasmax) in izdelala indeksno shemo na osnovi 1, ki se poveča za vsako vrstico podatkov.    Pomembno je tudi omeniti, da so glave v datoteki izpolnjene.  Z osnovno uporabo zgoraj predstavljene metode se sklepa, da so glave v prvi vrstici datoteke CSV.  To lahko spremenite tako, da metodi posredujete drugačen nabor parametrov.

Parametri 

Navedel sem povezavo do pand .read_csv dokumentacijo v spodnjih referencah.  Obstaja več parametrov, s katerimi lahko spremenite način branja in formatiranja podatkov v DataFrame.

Obstaja lepo število parametrov za .read_csv metoda.  Večina jih ni potrebna, ker ima večina naborov podatkov, ki jih prenesete, v standardni obliki.  To so stolpci v prvi vrstici in ločilo z vejico.

Obstaja nekaj parametrov, ki jih bom poudaril v vadnici, ker so lahko koristni.  Izčrpnejšo anketo lahko dobite na strani z dokumentacijo.

index_col

index_col je parameter, s katerim lahko označimo stolpec, ki vsebuje indeks.  Nekatere datoteke lahko vsebujejo indeks, nekatere pa ne.  V našem prvem naboru podatkov sem pustil, da python ustvari indeks.  To je standard .read_csv vedenje.

V našem drugem naboru podatkov je vključen indeks. Spodnja koda naloži DataFrame s podatki v datoteki CSV, vendar namesto ustvarjanja inkrementalnega celoštevilskega indeksa uporablja stolpec SHPMT_ID, vključen v nabor podatkov.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ', index_col =' SHIPMT_ID ')
tiskanje (df.glava (5))
tiskanje (df.rep (5))

Medtem ko ta nabor podatkov za indeks uporablja isto shemo, imajo lahko drugi nabori podatkov bolj uporaben indeks.

nrows, smuprows, usecols

Pri velikih naborih podatkov boste morda želeli naložiti le dele podatkov.  The nrows, smučišča, in usecols parametri vam omogočajo rezanje podatkov, vključenih v datoteko.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ', index_col =' SHIPMT_ID ', nrows = 50)
tiskanje (df.glava (5))
tiskanje (df.rep (5))

Z dodajanjem nrows parameter s celoštevilsko vrednostjo 50, .tail call zdaj vrne vrstice do 50.  Preostali podatki v datoteki niso uvoženi.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ', skiprows = 1000)
tiskanje (df.glava (5))
tiskanje (df.rep (5))

Z dodajanjem smučišča parameter, naš .glavo col v podatkih ne prikazuje začetnega indeksa 1001.  Ker smo preskočili vrstico z glavo, so novi podatki izgubili glavo in indeks na podlagi podatkov datoteke.  V nekaterih primerih je morda bolje podatke razrezati v DataFrame namesto pred nalaganjem podatkov.

The usecols je uporaben parameter, ki vam omogoča uvoz samo podnabora podatkov po stolpcih.  Lahko se mu posreduje ničli indeks ali seznam nizov z imeni stolpcev.  Spodnjo kodo sem uporabil za uvoz prvih štirih stolpcev v naš novi DataFrame.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ',
index_col = 'SHIPMT_ID',
nrows = 50, usecols = [0,1,2,3])
tiskanje (df.glava (5))
tiskanje (df.rep (5))

Od našega novega .glavo pokliči, naš DataFrame zdaj vsebuje samo prve štiri stolpce iz nabora podatkov.

motor

Zadnji parameter, za katerega menim, da bi bil pri nekaterih naborih podatkov še kako koristen, je motor parameter.  Uporabite lahko motor na osnovi C ali kodo na osnovi Pythona.  Motor C bo seveda hitrejši.  To je pomembno, če uvozite velike nabore podatkov.  Prednosti razčlenjevanja Pythona so bolj bogat nabor funkcij.  Ta prednost lahko pomeni manj, če v pomnilnik nalagate velike podatke.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ',
index_col = 'SHIPMT_ID', motor = 'c')
tiskanje (df.glava (5))
tiskanje (df.rep (5))

Nadaljevanje

Obstaja več drugih parametrov, ki lahko podaljšajo privzeto vedenje .read_csv metoda.  Najdete jih na strani z dokumenti, ki sem jo navedel spodaj.  .read_csv je uporabna metoda za nalaganje naborov podatkov v pande za analizo podatkov.  Ker številni brezplačni nabori podatkov v internetu nimajo API-jev, se bo to izkazalo za najkoristnejše za aplikacije zunaj finančnih podatkov, kjer obstajajo robustni API-ji za uvoz podatkov v pande.

Reference

https: // pande.pydata.org / pandas-docs / stable / generated / pandas.read_csv.html
https: // www.podatkov.vlada /
https: // komplet orodij.podnebje.gov / # podnebni raziskovalec
https: // www.popis.gov / econ / cfs / pums.html

How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
S pomočjo gumba X-Mouse Button Control različno prilagodite gumbe miške za različno programsko opremo
Mogoče potrebujete orodje, ki bi lahko spremenilo nadzor miške z vsako aplikacijo, ki jo uporabljate. V tem primeru lahko preizkusite aplikacijo z ime...
Microsoft Sculpt Touch Wireless Mouse Review
Pred kratkim sem prebral o Microsoftov kiparski dotik brezžično miško in se odločil za nakup. Potem ko sem ga nekaj časa uporabljal, sem se odločil, d...