Python tilbyder enestående værktøj til Data Science. Bruger du i øjeblikket de nyeste og mest effektive værktøjer i din arbejdsgang?

Python har fået ry for sin alsidighed og mange værktøjer, hvilket gør det til det foretrukne sprog for datavidenskab. Mange biblioteker har tilskyndet til innovation på dette område. For at forbedre dine færdigheder og udforske nye muligheder er det vigtigt at holde dig opdateret med nye værktøjer.

1. ConnectorX: Forenkling af indlæsning af data

Mens de fleste data ligger i databaser, forekommer beregninger normalt uden for dem. Alligevel kan overførsel af data til og fra databaser til egentligt arbejde føre til opbremsninger.

ConnectorX indlæser data fra databaser til mange almindelige data-krangelværktøjer i Python, og det holder tingene hurtigt ved at minimere mængden af ​​arbejde, der skal udføres.

ConnectorX bruger et Rust-programmeringssprogbibliotek i sin kerne. Dette giver mulighed for optimeringer som at kunne indlæse fra en datakilde parallelt med partitionering.

instagram viewer
Data i PostgreSQL-databasen, for eksempel kan du indlæse det på denne måde ved at angive en partitionskolonne.

IConnectorX understøtter også læsning af data fra forskellige databaser, herunder MySQL/MariaDB, SQLite, Amazon Redshift, Microsoft SQL Server, Azure SQL og Oracle.

Du kan transformere resultaterne til Pandas eller PyArrow DataFrames eller omdirigere dem til Modin, Dask eller Polars ved hjælp af PyArrow.

2. DuckDB: Bemyndigelse af analytiske forespørgselsarbejdsbelastninger

AndDB bruger et søjleformet datalager og optimerer til langvarige analytiske forespørgselsarbejdsbelastninger. Den tilbyder alle de funktioner, du ville forvente fra en konventionel database, inklusive ACID-transaktioner.

Desuden kan du konfigurere det i et Python-miljø med en enkelt pip-installationskommando, hvilket eliminerer behovet for en separat softwarepakkekonfiguration.

DuckDB indtager data i CSV-, JSON- eller Parket-format. DuckDB forbedrer effektiviteten ved at opdele resulterende databaser i separate fysiske filer i henhold til nøgler som år og måned.

Når du bruger DuckDB til forespørgsler, opfører den sig som en almindelig SQL-drevet relationsdatabase, men med ekstra funktioner såsom at tage tilfældige dataprøver og oprette vinduesfunktioner.

Desuden giver DuckDB nyttige udvidelser som fuldtekstsøgning, Excel-import/eksport, direkte forbindelser til SQLite og PostgreSQL, eksporterer filer i parketformat og understøtter forskellige almindelige geospatiale dataformater og typer.

3. Optimus: Strømlining af datamanipulation

Rensning og klargøring af data til DataFrame-centrerede projekter kan være en af ​​de mindre misundelsesværdige opgaver. Optimus er et alt-i-et værktøjssæt designet til at indlæse, udforske, rense og skrive data tilbage til forskellige datakilder.

Optimus kan bruge Pandas, Dask, CUDF (og Dask + CUDF), Vaex eller Spark som dens underliggende datamotor. Du kan indlæse fra og gemme tilbage til Arrow, Parket, Excel, forskellige almindelige databasekilder eller flade filformater som CSV og JSON.

Datamanipulations-API'en i Optimus er ligesom Pandas, men den tilbyder mere .rows() og .cols() tilbehør. Disse tilbehør gør forskellige opgaver meget nemmere at udføre.

Du kan f.eks. sortere en DataFrame, filtrere den baseret på kolonneværdier, ændre data ved hjælp af specifikke kriterier eller indsnævre operationer baseret på bestemte betingelser. Desuden inkluderer Optimus processorer designet til at håndtere almindelige datatyper i den virkelige verden, såsom e-mail-adresser og URL'er.

Det er vigtigt at være opmærksom på, at Optimus i øjeblikket er under aktiv udvikling, og dens sidste officielle udgivelse var i 2020. Som et resultat kan den være mindre opdateret sammenlignet med andre komponenter i din stak.

4. Polarer: Accelerating DataFrames

Hvis du oplever, at du arbejder med DataFrames og er frustreret over Pandas ydeevnebegrænsninger, Polarer er en fremragende løsning. Dette DataFrame-bibliotek til Python tilbyder en praktisk syntaks som Pandas.

I modsætning til Pandaer bruger Polars et bibliotek skrevet i Rust, der maksimerer din hardwares muligheder ud af kassen. Du behøver ikke bruge speciel syntaks for at nyde ydeevneforbedrende funktioner som parallel behandling eller SIMD.

Selv simple handlinger som at læse fra en CSV-fil er hurtigere. Derudover tilbyder Polars både ivrige og dovne eksekveringstilstande, der tillader øjeblikkelig udførelse af forespørgsler eller udskudt, indtil det er nødvendigt.

Det giver også en streaming-API til inkrementel forespørgselsbehandling, selvom denne funktion muligvis ikke er tilgængelig for alle funktioner endnu. Rustudviklere kan også oprette deres egne Polars-udvidelser ved hjælp af pyo3.

5. Snakemake: Automatisering af datavidenskabelige arbejdsgange

Opsætning af datavidenskabelige arbejdsgange giver udfordringer, og det kan være endnu sværere at sikre sammenhæng og forudsigelighed. Slangemage løser dette ved at automatisere dataanalyseopsætninger i Python, hvilket sikrer ensartede resultater for alle.

Mange eksisterende datavidenskabelige projekter er afhængige af Snakemake. Efterhånden som dit datavidenskabelige workflow bliver mere komplekst, bliver det fordelagtigt at automatisere det med Snakemake.

Snakemake arbejdsgange ligner GNU lave arbejdsgange. I Snakemake definerer du ønskede resultater ved hjælp af regler, som specificerer input, output og de nødvendige kommandoer. Du kan gøre arbejdsgangsregler flertrådede for at få fordele ved parallel behandling.

Derudover kan konfigurationsdata stamme fra JSON/YAML-filer. Arbejdsgange giver dig også mulighed for at definere funktioner til transformation af data, der bruges i regler og logføring af handlinger, der udføres ved hvert trin.

Snakemake designer job, så de er bærbare og kan implementeres i Kubernetes-administrerede miljøer eller specifikke cloud-platforme som Google Cloud Life Sciences eller Tibanna på AWS.

Du kan fryse arbejdsgange for at bruge et præcist pakkesæt, og udførte arbejdsgange kan gemme genererede enhedstest med dem. Til langtidsarkivering kan du gemme arbejdsgange som tarballs.

Ved at omfavne disse nyeste datavidenskabelige værktøjer kan du øge din produktivitet, udvide dine muligheder og tage på spændende datadrevne rejser. Men husk, at det datavidenskabelige landskab udvikler sig. For at blive på forkant, fortsæt med at udforske, eksperimentere og tilpasse dig de nye værktøjer og teknikker, der dukker op i dette skiftende felt.