Artikler

Fantastiske, men lidet kendte Python-biblioteker

Python-programmøren er altid på udkig efter nye biblioteker, som kan forbedre arbejdet i dataingeniør- og business intelligence-projekter.

I denne artikel ser vi nogle lidt kendte, men meget nyttige pythonbiblioteker:

1. Pendulum

Selvom mange biblioteker er tilgængelige i Python for DateTime finder jeg Pendulum let at bruge på enhver datooperation. Et pendul er min yndlingsreol til min daglige brug på arbejdet. Udvider det indbyggede Python datetime-modul og tilføjer et mere intuitivt API til styring af tidszoner og udførelse af dato- og klokkeslætshandlinger såsom tilføjelse af tidsintervaller, fratrækning af datoer og konvertering mellem tidszoner. Giver en enkel og intuitiv API til formatering af datoer og tidspunkter.

Installation
!pip install pendulum
eksempel
# import library

import pendulum
dt = pendulum.datetime(2023, 1, 31)
print(dt)
 
#local() creates datetime instance with local timezone

local = pendulum.local(2023, 1, 31)
print("Local Time:", local)
print("Local Time Zone:", local.timezone.name)

# Printing UTC time

utc = pendulum.now('UTC')
print("Current UTC time:", utc)
 
# Converting UTC timezone into Europe/Paris time

europe = utc.in_timezone('Europe/Paris')
print("Current time in Paris:", europe)
Produktion

2. ftfy

Er du stødt på, når fremmedsproget i dataene ikke vises korrekt? Dette kaldes Mojibake. Mojibake er et udtryk, der bruges til at beskrive forvansket eller krypteret tekst, der opstår som følge af kodnings- eller afkodningsproblemer. Det opstår normalt, når tekst skrevet med én tegnkodning er forkert afkodet med en anden kodning. ftfy python-biblioteket hjælper dig med at rette Mojibake, hvilket er meget nyttigt i NLP-brugssager.

Installation
!pip installer ftfy
eksempel
print(ftfy.fix_text('Ret sætningen ved hjælp af “ftfyâ€\x9d.')) print(ftfy.fix_text('âœ" Ingen problemer med tekst')) print(ftfy.fix_text('à perturber la réflexion '))
Produktion

Ud over Mojibake vil ftfy rette dårlige kodninger, dårlige linjeafslutninger og dårlige citater. kan forstå tekst, der er blevet afkodet som en af ​​følgende kodninger:

  • Latin-1 (ISO-8859–1)
  • Windows-1252 (cp1252 — bruges i Microsoft-produkter)
  • Windows-1251 (cp1251 - den russiske version af cp1252)
  • Windows-1250 (cp1250 — den østeuropæiske version af cp1252)
  • ISO-8859–2 (som ikke er helt det samme som Windows-1250)
  • MacRoman (bruges på Mac OS 9 og tidligere)
  • cp437 (bruges i MS-DOS og nogle versioner af Windows kommandoprompt)

3. Skitse

Sketch er en unik AI-kodningsassistent designet specielt til brugere, der arbejder med panda-biblioteket i Python. Den bruger maskinlæringsalgoritmer til at forstå konteksten af ​​brugerdata og giver relevante kodeforslag for at gøre datamanipulation og analyseopgaver nemmere og mere effektive. Sketch kræver ikke, at brugere installerer yderligere plug-ins i deres IDE, hvilket gør det hurtigt og nemt at bruge. Dette kan reducere den tid og indsats, der kræves til datarelaterede opgaver, og hjælpe brugerne med at skrive bedre og mere effektiv kode.

Installation
!pip installationsskitse
eksempel

Vi er nødt til at tilføje en .sketch-udvidelse til pandas dataramme for at bruge dette bibliotek.

.skitse.spørg

spørg er en funktion i Sketch, der giver brugerne mulighed for at stille spørgsmål om deres data i et naturligt sprogformat. Giver et tekstbaseret svar på brugerens forespørgsel.

# Import af biblioteker import skitse import pandaer som pd # Læsning af data (bruger twitter data som eksempel) df = pd.read_csv("tweets.csv") print(df)
# Spørg om hvilke kolonner er kategoritype df.sketch.ask("Hvilke kolonner er kategoritype?")
Produktion
# For at finde formen på datarammen df.sketch.ask("Hvad er formen på datarammen")

.skitse.howto

hvordan er en funktion, der giver en kodeblok, der kan bruges som start- eller slutpunkt for forskellige datarelaterede opgaver. Vi kan bede om kodestykker for at normalisere deres data, skabe nye funktioner, spore data og endda bygge modeller. Dette vil spare tid og gøre det nemt at kopiere og indsætte koden; du behøver ikke at skrive koden manuelt fra bunden.

# Beder om at give kode klippet til visualisering af følelserne df.sketch.howto("Visualiser følelserne")
Produktion

.skitse.anvend

.apply-funktionen det hjælper med at generere nye funktioner, analysere felter og udføre andre datamanipulationer. For at bruge denne funktion skal vi have en OpenAI-konto og bruge API-nøglen til at udføre opgaverne. Jeg har ikke prøvet denne funktion.

Jeg nød at bruge dette bibliotek, især Kom det virker, og jeg finder det nyttigt.

4. sidekode

"pgeocode" er et fremragende bibliotek, som jeg for nylig faldt over, og som har været utroligt nyttigt til mine rumlige analyseprojekter. For eksempel giver det dig mulighed for at finde afstanden mellem to postnumre og giver geografisk information ved at tage et land og et postnummer som input.

Installation
!pip installer sidekode
eksempel

Få geografiske oplysninger for specifikke postnumre

# Kontrollerer for landet "Indien" nomi = pgeocode.Nominatim('In') # Får geografisk information ved at sende postnumrene nomi.query_postal_code(["620018", "620017", "620012"])
Produktion

"pgeocode" beregner afstanden mellem to postnumre ved at tage landet og postnumrene som input. Resultatet er udtrykt i kilometer.

# Find en afstand mellem to postnumre afstand = pgeocode.GeoDistance('In') distance.query_postal_code("620018", "620012")
Produktion

5. rembg

rembg er et andet nyttigt bibliotek, der nemt fjerner baggrunden fra billeder.

Installation
!pip installer rembg
eksempel
# Importerer biblioteker
fra rembg import fjern import cv2 # sti til inputbillede (min fil: image.jpeg) input_path = 'image.jpeg' # sti til at gemme outputbillede og gemme som en output.jpeg output_path = 'output.jpeg' # Læsning af inputtet billedinput = cv2.imread(input_path) # Fjerner baggrundsoutput = fjern(input) # Gemmer fil cv2.imwrite(output_path, output)
Produktion

Du er måske allerede bekendt med nogle af disse biblioteker, men for mig er Sketch, Pendulum, pgeocode og ftfy uundværlige til mit dataingeniørarbejde. Jeg stoler meget på dem til mine projekter.

6. Humaniser

Humanize" giver enkel, letlæselig strengformatering for tal, datoer og tidspunkter. Målet med biblioteket er at tage dataene og gøre dem mere brugervenlige, for eksempel ved at konvertere et antal sekunder til en mere læsbar streng som "2 minutter siden". Biblioteket kan formatere data på en række forskellige måder, herunder formatering af tal med kommaer, konvertering af tidsstempler til relative tidspunkter og mere.

Jeg bruger ofte heltal og tidsstempler til mine dataingeniørprojekter.

Installation
!pip installer menneskeliggørelse
Eksempel (heltal)
# Importerer bibliotek import humaniser import datetime som dt # Formatering af tal med komma a = humanize.intcomma(951009) # konvertering af tal til ord b = humanize.intword(10046328394) #printing print(a) print(b)
Produktion
Eksempel (dato og klokkeslæt)
import humanize import datetime as dt a = humanize.naturaldate(dt.date(2012, 6, 5)) b = humanize.naturalday(dt.date(2012, 6, 5)) print(a) print(b)

Ercole Palmeri

Nyhedsbrev om innovation
Gå ikke glip af de vigtigste nyheder om innovation. Tilmeld dig for at modtage dem via e-mail.
tags: python

Seneste artikler

Veeam har den mest omfattende support til ransomware, fra beskyttelse til respons og gendannelse

Coveware by Veeam vil fortsætte med at levere responstjenester til cyberafpresning. Coveware vil tilbyde kriminaltekniske og afhjælpende funktioner...

23 April 2024

Grøn og digital revolution: Hvordan prædiktiv vedligeholdelse transformerer olie- og gasindustrien

Forudsigende vedligeholdelse revolutionerer olie- og gassektoren med en innovativ og proaktiv tilgang til anlægsstyring...

22 April 2024

Britisk antitrust-tilsynsmyndighed rejser BigTech-alarm over GenAI

Det britiske CMA har udsendt en advarsel om Big Techs adfærd på markedet for kunstig intelligens. Der…

18 April 2024

Casa Green: energirevolution for en bæredygtig fremtid i Italien

Dekretet om "grønne huse", der er formuleret af Den Europæiske Union for at øge bygningers energieffektivitet, har afsluttet sin lovgivningsproces med...

18 April 2024