Članci

Neverovatne, ali malo poznate Python biblioteke

Python programer je uvijek u potrazi za novim bibliotekama, koje mogu poboljšati rad u projektima inženjeringa podataka i poslovne inteligencije.

U ovom članku vidimo neke malo poznate, ali vrlo korisne python biblioteke:

1. Klatno

Iako su mnoge biblioteke dostupne u piton za DateTime, smatram da je Pendulum jednostavan za korištenje u bilo kojoj operaciji datuma. Klatno je moja omiljena polica za knjige za svakodnevnu upotrebu na poslu. Proširuje ugrađeni Python datetime modul, dodajući intuitivniji API za upravljanje vremenskim zonama i izvođenje operacija datuma i vremena kao što su dodavanje vremenskih intervala, oduzimanje datuma i konverzija između vremenskih zona. Pruža jednostavan i intuitivan API za formatiranje datuma i vremena.

Instalacija
!pip install pendulum
primjer
# 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)
izlaz

2. ftfy

Jeste li se susreli kada se strani jezik u podacima ne pojavljuje ispravno? Ovo se zove Mojibake. Mojibake je termin koji se koristi za opisivanje iskrivljenog ili šifrovanog teksta koji se javlja kao rezultat problema kodiranja ili dekodiranja. Obično se događa kada se tekst napisan jednim kodiranjem znakova pogrešno dekodira korištenjem drugog kodiranja. Biblioteka ftfy python će vam pomoći da popravite Mojibake, što je vrlo korisno u slučajevima korištenja NLP-a.

Instalacija
!pip install ftfy
primjer
print(ftfy.fix_text('Ispravi rečenicu koristeći “ftfyâ€\x9d.')) print(ftfy.fix_text('✔ Nema problema s tekstom')) print(ftfy.fix_text('à perturber la réflexion '))
izlaz

Pored Mojibakea, ftfy će popraviti loša kodiranja, loše završetke redaka i loše citate. može razumjeti tekst koji je dekodiran kao jedno od sljedećih kodiranja:

  • latinica-1 (ISO-8859–1)
  • Windows-1252 (cp1252 — koristi se u Microsoft proizvodima)
  • Windows-1251 (cp1251 — ruska verzija cp1252)
  • Windows-1250 (cp1250 — istočnoevropska verzija cp1252)
  • ISO-8859–2 (što nije potpuno isto kao Windows-1250)
  • MacRoman (koristi se na Mac OS 9 i ranijim verzijama)
  • cp437 (koristi se u MS-DOS-u i nekim verzijama Windows komandne linije)

3. Skica

Sketch je jedinstveni pomoćnik za AI kodiranje dizajniran posebno za korisnike koji rade s pandas bibliotekom u Pythonu. Koristi algoritme mašinskog učenja za razumijevanje konteksta korisničkih podataka i pruža relevantne prijedloge koda kako bi manipulaciju podacima i zadatke analize učinili lakšim i efikasnijim. Sketch ne zahtijeva od korisnika da instaliraju dodatne dodatke u svoj IDE, što ga čini brzim i jednostavnim za korištenje. Ovo može značajno smanjiti vrijeme i trud potreban za zadatke vezane za podatke i pomoći korisnicima da pišu bolji, efikasniji kod.

Instalacija
!pip instalacijska skica
primjer

Moramo dodati .sketch ekstenziju u pandas dataframe da bismo koristili ovu biblioteku.

.skica.ask

Pitajte je značajka Sketch-a koja omogućava korisnicima da postavljaju pitanja o svojim podacima u formatu prirodnog jezika. Pruža tekstualni odgovor na upit korisnika.

# Uvoz biblioteka uvozi skice import panda kao pd # Čitanje podataka (koristeći twitter podatke kao primjer) df = pd.read_csv("tweets.csv") print(df)
# Pitam koji su stupci tipa kategorije df.sketch.ask("Koje kolone su tipa kategorije?")
izlaz
# Da biste pronašli oblik okvira podataka df.sketch.ask("Koji je oblik okvira podataka")

.skica.howto

kako je funkcija koja pruža blok koda koji se može koristiti kao početna ili završna točka za različite zadatke vezane za podatke. Možemo tražiti isječke koda za normalizaciju njihovih podataka, kreiranje novih funkcija, praćenje podataka, pa čak i izgradnju modela. Ovo će uštedjeti vrijeme i olakšati kopiranje i lijepljenje koda; ne morate ručno pisati kod od nule.

# Traženje isječenog koda za vizualizaciju emocija df.sketch.howto("Vizualizirajte emocije")
izlaz

.skica.primijeniti

Funkcija .apply pomaže u generiranju novih funkcija, raščlanjivanju polja i obavljanju drugih manipulacija podacima. Da bismo koristili ovu funkciju, moramo imati OpenAI nalog i koristiti API ključ za obavljanje zadataka. Nisam probao ovu funkciju.

Posebno sam uživao u korištenju ove biblioteke doći radi i smatram da je korisno.

4. pgeocode

“pgeocode” je odlična biblioteka na koju sam nedavno naišao i koja je bila nevjerovatno korisna za moje projekte prostorne analize. Na primjer, omogućava vam da pronađete udaljenost između dva poštanska broja i pruža geografske informacije uzimajući zemlju i poštanski broj kao ulaz.

Instalacija
!pip install pgeocode
primjer

Dobijte geografske informacije za određene poštanske brojeve

# Provjera zemlje "Indija" nomi = pgeocode.Nominatim('In') # Dobijanje geografskih informacija prosljeđivanjem poštanskih brojeva nomi.query_postal_code(["620018", "620017", "620012"])
izlaz

“pgeocode” izračunava udaljenost između dva poštanska broja uzimajući zemlju i poštanski broj kao ulaz. Rezultat se izražava u kilometrima.

# Pronalaženje udaljenosti između dva poštanska broja distance = pgeocode.GeoDistance('In') distance.query_postal_code("620018", "620012")
izlaz

5. rembg

rembg je još jedna korisna biblioteka koja lako uklanja pozadinu sa slika.

Instalacija
!pip install rembg
primjer
# Uvoz biblioteka
iz rembg importa ukloni import cv2 # putanja ulazne slike (moj fajl: image.jpeg) input_path = 'image.jpeg' # putanja za čuvanje izlazne slike i čuvanje kao output.jpeg output_path = 'output.jpeg' # Čitanje ulaza image input = cv2.imread(input_path) # Uklanjanje pozadinskog izlaza = remove(input) # Čuvanje datoteke cv2.imwrite(output_path, output)
izlaz

Možda ste već upoznati sa nekim od ovih biblioteka, ali za mene su Sketch, Pendulum, pgeocode i ftfy neophodni za moj rad na inženjeringu podataka. Mnogo se oslanjam na njih u svojim projektima.

6. Humanizovati

Humanize” pruža jednostavno, lako čitljivo formatiranje nizova za brojeve, datume i vremena. Cilj biblioteke je da uzme podatke i učini ih lakšim za korisnika, na primjer pretvaranjem broja sekundi u čitljiviji niz poput "prije 2 minute". Biblioteka može formatirati podatke na različite načine, uključujući formatiranje brojeva sa zarezima, pretvaranje vremenskih oznaka u relativna vremena i još mnogo toga.

Često koristim cijele brojeve i vremenske oznake za svoje projekte inženjeringa podataka.

Instalacija
!pip install humanize
Primjer (cijeli brojevi)
# Uvoz biblioteke import humanize import datetime kao dt # Formatiranje brojeva sa zarezom a = humanize.intcomma(951009) # pretvaranje brojeva u riječi b = humanize.intword(10046328394) #štampanje print(a) print(b)
izlaz
Primjer (datum i vrijeme)
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

Inovacijski bilten
Ne propustite najvažnije vijesti o inovacijama. Prijavite se da ih primate putem e-pošte.
Tagovi: python

Nedavni članak

Prednosti bojanki za djecu - svijet magije za sve uzraste

Razvijanje finih motoričkih sposobnosti kroz bojenje priprema djecu za složenije vještine poput pisanja. Za bojenje…

2 May 2024

Budućnost je tu: Kako brodarska industrija revolucionira globalnu ekonomiju

Pomorski sektor je prava globalna ekonomska sila, koja je krenula ka tržištu od 150 milijardi...

1 May 2024

Izdavači i OpenAI potpisuju ugovore za reguliranje protoka informacija koje obrađuje umjetna inteligencija

Prošlog ponedjeljka Financial Times je objavio dogovor sa OpenAI. FT licencira svoje novinarstvo svjetske klase…

30 april 2024

Online plaćanja: Evo kako vas usluge striminga čine da plaćate zauvijek

Milioni ljudi plaćaju usluge striminga, plaćajući mjesečne pretplate. Uvriježeno je mišljenje da vi…

29 april 2024