pandor

Pandas read_csv Handledning

Pandas read_csv Handledning

Pandor .read_csv

Jag har redan diskuterat en del av historien och användningen av Python-bibliotekspandorna.  pandor designades utifrån behovet av en effektiv ekonomisk dataanalys och manipulationsbibliotek för Python.  För att ladda data för analys och manipulation tillhandahåller pandor två metoder, DataReader och read_csv.  Jag täckte den första här.  Det senare är föremålet för denna handledning.

.read_csv

Det finns ett stort antal gratis datalagrar online som innehåller information om en mängd olika fält.  Jag har inkluderat några av dessa resurser i referensavsnittet nedan.  Eftersom jag har visat de inbyggda API: erna för att effektivt dra in finansiella data här kommer jag att använda en annan datakälla i den här självstudien.

Data.gov erbjuder ett stort urval av gratis data om allt från klimatförändringar till U.S. tillverkningsstatistik.  Jag har laddat ner två datamängder för användning i den här handledningen.  Den första är den genomsnittliga dagliga maximitemperaturen för Bay County, Florida. Dessa data laddades ner från U.S. Climate Resilience Toolkit för perioden 1950 till nuvarande.

Den andra är Commodity Flow Survey som mäter importläge och volym till landet under en femårsperiod.

Båda länkarna för dessa datamängder finns i referensavsnittet nedan.  De .read_csv Metoden, som framgår av namnet, kommer att ladda in denna information från en CSV-fil och starta en DataFrame ur den datamängden.

Användande

Varje gång du använder ett externt bibliotek måste du berätta för Python att det måste importeras.  Nedan följer kodraden som importerar pandabiblioteket.

importera pandor som pd

Den grundläggande användningen av .read_csv metoden är nedan.  Detta instantierar och fyller a DataFrame df med informationen i CSV-filen.

df = pd.read_csv ('12005-årlig-hist-obs-tasmax.csv ')

Genom att lägga till ytterligare ett par rader kan vi inspektera de första och sista 5 raderna från den nyligen skapade DataFrame.

df = pd.read_csv ('12005-årlig-hist-obs-tasmax.csv ')
skriva ut (df.huvud (5))
skriva ut (df.svans (5))

Koden har laddat en kolumn för året, den genomsnittliga dagliga temperaturen i Celsius (tasmax), och konstruerat ett 1-baserat indexeringsschema som ökar för varje datarad.    Det är också viktigt att notera att rubrikerna fylls i från filen.  Med den grundläggande användningen av metoden som presenteras ovan, dras rubrikerna till att vara på första raden i CSV-filen.  Detta kan ändras genom att skicka en annan uppsättning parametrar till metoden.

Parametrar 

Jag har tillhandahållit länken till pandorna .read_csv dokumentationen i referenserna nedan.  Det finns flera parametrar som kan användas för att ändra hur data läses och formateras i DataFrame.

Det finns ett stort antal parametrar för .read_csv metod.  De flesta är inte nödvändiga eftersom de flesta datauppsättningar som du laddar ner har ett standardformat.  Det är kolumner på första raden och en kommaavgränsare.

Det finns ett par parametrar som jag kommer att markera i handledningen eftersom de kan vara användbara.  En mer omfattande undersökning kan hämtas från dokumentationssidan.

index_col

index_col är en parameter som kan användas för att ange kolumnen som innehåller indexet.  Vissa filer kan innehålla ett index och andra kanske inte.  I vår första datamängd lät jag python skapa ett index.  Detta är standarden .read_csv beteende.

I vår andra datamängd ingår ett index. Koden nedan laddar DataFrame med data i CSV-filen, men istället för att skapa ett stegvis heltal baserat index använder den kolumnen SHPMT_ID som ingår i datamängden.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ', index_col =' SHIPMT_ID ')
skriva ut (df.huvud (5))
skriva ut (df.svans (5))

Medan denna dataset använder samma schema för indexet kan andra dataset ha ett mer användbart index.

nollor, hopprader, usecols

Med stora datamängder kanske du bara vill ladda delar av datan.  De norr, hoppar över, och usecols Med parametrarna kan du skära in data som ingår i filen.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ', index_col =' SHIPMT_ID ', nrows = 50)
skriva ut (df.huvud (5))
skriva ut (df.svans (5))

Genom att lägga till norr parameter med ett heltal värde 50, .tail call returnerar nu linjer upp till 50.  Resten av data i filen importeras inte.

df = pd.read_csv ('cfs_2012_pumf_csv.txt ', hopprader = 1000)
skriva ut (df.huvud (5))
skriva ut (df.svans (5))

Genom att lägga till hoppar över parameter, vår .huvud col visar inte ett startindex på 1001 i data.  Eftersom vi hoppade över rubrikraden har de nya uppgifterna tappat rubriken och indexet baserat på fildata.  I vissa fall kan det vara bättre att skiva dina data i en DataFrame snarare än innan data laddades.

De usecols är en användbar parameter som låter dig importera endast en delmängd av data per kolumn.  Det kan skickas till ett nollindex eller en lista med strängar med kolumnnamnen.  Jag använde koden nedan för att importera de fyra första kolumnerna till vår nya DataFrame.

df = pd.read_csv ('cfs_2012_pumf_csv.Text',
index_col = 'SHIPMT_ID',
nr: 50, usecols = [0,1,2,3])
skriva ut (df.huvud (5))
skriva ut (df.svans (5))

Från vårt nya .huvud ring, vår DataFrame innehåller nu bara de första fyra kolumnerna från datasetet.

motor

En sista parameter som jag tror skulle vara till nytta i vissa datauppsättningar är motor parameter.  Du kan använda antingen den C-baserade motorn eller den Python-baserade koden.  C-motorn kommer naturligtvis att vara snabbare.  Detta är viktigt om du importerar stora datamängder.  Fördelarna med Python-parsing är en mer funktionsrik uppsättning.  Denna fördel kan betyda mindre om du laddar in stora data i minnet.

df = pd.read_csv ('cfs_2012_pumf_csv.Text',
index_col = 'SHIPMT_ID', motor = 'c')
skriva ut (df.huvud (5))
skriva ut (df.svans (5))

Uppföljning

Det finns flera andra parametrar som kan utöka standardbeteendet för .read_csv metod.  De finns på dokumentsidan som jag hänvisade till nedan.  .read_csv är en användbar metod för att ladda datauppsättningar i pandor för dataanalys.  Eftersom många av de fria datauppsättningarna på internet inte har API: er kommer det att vara mest användbart för applikationer utanför finansiell data där robusta API: er finns för att importera data till panda.

Referenser

https: // pandor.pydata.org / pandas-docs / stable / generated / pandas.read_csv.html
https: // www.data.gov /
https: // verktygslåda.klimat.gov / # klimatutforskare
https: // www.folkräkning.gov / econ / cfs / pums.html

Mus Lägg till musgester i Windows 10 med dessa gratisverktyg
Lägg till musgester i Windows 10 med dessa gratisverktyg
Under senare år har datorer och operativsystem utvecklats kraftigt. Det fanns en tid då användare var tvungna att använda kommandon för att navigera g...
Mus Kontrollera och hantera musrörelser mellan flera skärmar i Windows 10
Kontrollera och hantera musrörelser mellan flera skärmar i Windows 10
Dual Display Mouse Manager låter dig kontrollera och konfigurera musrörelser mellan flera skärmar genom att sakta ner dess rörelser nära gränsen. Wind...
Mus WinMouse låter dig anpassa och förbättra muspekarens rörelse på Windows PC
WinMouse låter dig anpassa och förbättra muspekarens rörelse på Windows PC
Om du vill förbättra standardfunktionerna för din muspekare, använd freeware WinMouse. Det lägger till fler funktioner som hjälper dig att få ut det m...