Programmering

Pandas 1.0 gir store endringer

Pandas, dataanalysebiblioteket for Python, har endelig nådd en 1.0-utgivelseskandidat. Pandas 1.0 fjerner mye foreldet funksjonalitet og krever Python 3.6 eller bedre.

Pandas ble opprettet for å jobbe enkelt med data i strukturerte formater, for eksempel tabeller, matriser og tidsseriedata. Pandas formørker mye av funksjonaliteten til Rs dataframmer, og fungerer godt med andre vitenskapelige databiblioteker i Python-verdenen.

Med Pandas 1.0 introduserer skaperne av Pandas en rekke bruddendringer som har vært i verk en stund nå. Her er en oversikt over de viktigste, og hvordan du skal håndtere dem fremover.

Pandaer krever Python 3.6.1 eller høyere

Den største endringen i Pandas 1.0 er å slippe støtte for alle versjoner av Python tidligere enn Python 3.6.1. Pandas droppet støtte for Python 2 og forpliktet seg utelukkende til Python 3 fra og med 2019, så dette er for det meste en forbedring av en eksisterende policy.

Prosjektet har også en ny støttepolicy for fremtidige versjoner av Pandas. Enhver dråpe støtte for en versjon av Python vil bli rullet ut i store nye versjoner av Pandas (2.0, 3.0, etc.). Mindre utgivelser vil avvikle funksjoner, men ikke fjerne dem; store utgivelser vil fjerne funksjoner.

Pandas nye NA-verdi

Tidligere versjoner av Pandas brukte forskjellige typer for å representere manglende data, avhengig av typen container - en for datetime-typer, en for objekter osv. Alle disse blir slått sammen til en enkelt manglende datatype kalt NA. Akkurat nå er støtten til NA begrenset til noen få objekttyper, og den regnes som eksperimentell, så den bør ennå ikke brukes i produksjonen.

API-inkompatibiliteter

På grunn av antall endringer i Pandas 1.0, er noen av Pandas API-er nå bakoverkompatible. Dette inkluderer endringer i oppførselen til mange vanlige elementer:

  • De Dataramme type
  • pandaer. matrise
  • arrays.IntegerArray

Mange av disse inkompatibilitetene vil gi advarsler, men det er best å teste eksisterende Pandas-skript side om side med Pandas 1.0-kolleger for å se hvordan de fungerer.

Utfasede funksjoner i Pandas 1.0

Pandas dokumentasjon viser alle funksjonene som skal utfases, men ikke fjernes i Pandas 1.0. Noen av dem har bare blitt omdøpt eller reorganisert, for eksempel testmodulen, mens andre endrer bruken av visse funksjonsparametere. I et par tilfeller, for eksempel med Series.item () og Index.item (), har funksjoner blitt reddet fra nedskrivning og vil fortsatt være tilgjengelige.

Hvis du bruker en versjon av Pandas tidligere enn 0.25, anbefaler skaperne av Pandas å migrere til Pandas 0.25først, sørge for at all Panda-avhengig kode oppfører seg som forventet,deretter migrerer til Pandas 1.0. Dette er for å sikre at alle koder som bruker foreldet funksjonalitet blir flagget.

Funksjoner fjernet i Pandas 1.0

Noen viktige Pandas-funksjoner er fjernet helt i Pandas 1.0:

  • SparseSeries og SparseDataFrame. Bruk Serie eller Dataramme med sparsevalues alternativet i stedet.
  • Matplotlib enhetsregistrering. Dette er for å forhindre at Matplotlib påvirkes når du importerer Pandas.
  • Mange andre funksjoner som tidligere ble avviklet.

Igjen, dette er en annen grunn til å teste Pandas 1.0-utgivelseskandidaten side om side med din eksisterende Pandas-installasjon, og sørge for at skriptene dine oppfører seg som beregnet.

Installere Pandas 1.0

Pandas 1.0 kan installeres direkte i Python ved hjelp av Pip-pakkebehandling ved å skrive pip installere pandaer. Pandas 1.0 er også tilgjengelig som en del av Anaconda Python-distribusjonen for vitenskapelig databehandling.

I alle tilfeller er det best å installere Pandas i et virtuelt miljø, spesielt hvis du vil kjøre tester av Pandas 1.0-skript side om side med sine tidligere versjoner.

$config[zx-auto] not found$config[zx-overlay] not found