Store dataaktiver er rodet, især når du skal trække dem fra websteder, servere eller andre datakilder.

UI-baserede applikationer som MS Excel er gode til at håndtere simple datasæt, men kan kæmpe, når dataene bliver større. Dette er en god grund for dig til at flytte til Python for at udføre mere komplekse databaserede operationer.

Pythons tredjepartsbibliotek, Pandas, hjælper dig langt med at sortere dine eksisterende datasæt hurtigt. Hvis du ønsker at sortere dine data i Python, ser denne artikel på et par måder at opnå denne opgave på.

Forudsætninger for at bruge Python til at sortere data

Før du sorterer dine data i Python, skal du sørge for et par forudsætninger:

  • Download en Python IDE. Du kan bruge en Python-kompatibel IDE, såsom Jupyter Notebook, PyCharm og Spyder, blandt andre. Hver af disse er kompatible med alle Python-versioner.
  • Installer pandaer. Du skal bruge pandapakken, som du kan installere ved hjælp af PIP eller din foretrukne metode.
  • Eksempeldatasæt. Download en eksempeldatasæt at øve de anførte koder. Alternativt kan du bruge disse procedurer på dine eksklusive data.
instagram viewer

Import af Pandas-biblioteket i Python

Pandas er et tredjeparts Python-bibliotek, som du kan bruge til at håndtere Excel, CSV og andre dataformater.

For at arbejde med et eksempel på en Excel-fil, start med at importere pandas-biblioteket. Derefter skal du bruge importprocedure for at læse Excel-dataene ind i Python.

For at importere biblioteket

importere pandaer som pd

Opret en ny dataramme for at indlæse Excel-dataene

fil = "Eksempel - Superstore.xls"
df = pd.read_excel (fil)
df.hoved()

Hvor:

  • df er et DataFrame-objekt, som gemmer de importerede data.
  • pd er et alias for Pandas-biblioteket.
  • read_excel er en metode til at læse Excel-filen ind i Python.
  • fil er en sti til Excel-filen.
  • hoved er en metode, der returnerer de første fem rækker fra DataFrame.

Når dit program har indlæst dataene, kan du bruge de mange tilgængelige DataFrame-metoder til at sortere dem på forskellige måder.

1. Sortering efter en enkelt kolonne i en DataFrame

Da dine data vil have mange rækker og kolonner, vil du ofte sortere dataene ud fra en eller flere specifikke kolonner.

Python sorterer dataene i stigende rækkefølge som standard. Hvis du ønsker at ændre sorteringsrækkefølgen, skal du udtrykkeligt nævne det i din kode.

Sorter efter en enkelt kolonne (stigende rækkefølge)

df.sort_values ​​(af = "Kunde ID")

Sorter efter en enkelt kolonne (faldende rækkefølge)

Indstil stigende parameter til Falsk for at sortere din kolonne i faldende rækkefølge.

df.sort_values ​​(af = "Kunde ID", stigende=Falsk)

Hvor:

  • df er et DataFrame-objekt, der indeholder dataene.
  • sorteringsværdier er en metode til at sortere efter dataværdier.
  • ved er en parameter til at definere kolonnenavnet.
  • stigende er en parameter til at definere sorteringsrækkefølgen.

2. Sortering af flere kolonner i en dataramme

Hvis dine krav kræver det, kan du også sortere dine DataFrame(r) baseret på flere kolonner på én gang. I et sådant scenarie skal du definere kolonnereferencerne i en liste.

Sorter efter flere kolonner stigende

df.sort_values ​​(af = ["Kunde ID", "By"])

Sorter efter flere kolonner faldende

Brug funktionen stigende = Falsk for at sortere dine kolonner i faldende rækkefølge. Husk, at du skal angive navnene på kolonnerne på en liste for at sortere dem samtidigt.

df.sort_values ​​(af = ["Kunde ID", "By"], stigende = Falsk)

Sortering efter flere kolonner i forskellige sorteringsrækkefølger

Med det grundlæggende i sortering af vejen, hvad sker der, når du vil sortere en kolonne i faldende rækkefølge og en anden i stigende rækkefølge? Du skal justere din kode lidt for at inkorporere disse krav.

For eksempel at sortere Område og By kolonner i henholdsvis faldende og stigende rækkefølge:

df.sort_values ​​(af = ["Område", "By"], stigende = [Falsk, Sand])

Forklaringen af ​​denne kode er enkel; du definerer DataFrame-navnet og videregiver sorteringsværdier funktion sammen med kolonnenavnene på en liste. Du bør bruge Boolean værdier for at angive sorteringsrækkefølgen.

At kalde funktionen som dette betyder, at Python først vil sortere efter DataFrames Region-kolonne i faldende rækkefølge. Derefter vil rækker med en identisk region blive sorteret yderligere efter By-kolonnen i stigende rækkefølge.

3. Sådan sorteres kolonner i en dataramme efter indeks

Indeksvariablen er standardværdien, der er tildelt hver række i en Python Dataframe. Du kan definere indeksværdierne eller lade Python indstille en indeksværdi alene.

For at sortere dataene efter deres indeksværdi kan du bruge sort_indeks fungere. Denne funktion sorterer baseret på indekset snarere end på nogen værdier indeholdt i det originale datasæt.

df.sort_index()

Som med sort_values ​​kan du bestå en stigende parameter for at angive retningen for sorteringen. Send for eksempel en værdi på Falsk for at sortere data i faldende rækkefølge:

df.sort_index (stigende = Falsk)

4. Sortering af kolonner i en dataramme i stedet for rækker

I stedet for at sortere rækkerne i en DataFrame, kan du sortere dens kolonner. Du kan gøre det ved at kalde sort_index-metoden og sende den en akse parameter med en værdi på 1:

df.sort_index (akse=1)

Dette trin sorterer DataFrame efter dens kolonner i stigende rækkefølge. For at sortere DataFrames kolonner i faldende rækkefølge kan du angive sorteringsrækkefølgen i dit sorteringstrin.

df.sort_index (akse=1, stigende = Falsk)

5. Ændring af DataFrame, mens du sorterer den

De to sorteringsmetoder fungerer ved at returnere en kopi af de originale data i dens nyligt sorterede tilstand. For at spare lagerplads, eller blot for at skrive mere kortfattet kode, kan du i stedet ændre de originale DataFrame-data. Hver metode accepterer en på plads boolesk parameter, som ændrer dataene i stedet for at returnere en ændret kopi.

df.sort_values ​​(af = ["Kunde ID", "By"], stigende = Falsk, på plads = Sand)

Lær at sortere data i Python

Python replikerer mange af Excels indbyggede funktioner med nogle få linjer kode. Fra sorteringsprocedurer til oprettelse af udførlige pivottabeller på dine data, du navngiver det, og du kan gøre det i Python.

Hvis du stadig er ny til Python og lærer rebene, vil disse trin forbedre dine kodningsevner relativt nemt.