Шесть малоизвестных библиотек Python 2023

Я активно использую Python в течение последних пяти лет. Мне постоянно попадаются интересные библиотеки, которые могут улучшить мою работу в проектах. В прошлом я поделился двумя статьями: пятью классными библиотеками Python для Data Science и шестью классными библиотеками Python, с которыми я недавно столкнулся.

В этой статье я делюсь еще шестью удивительными библиотеками python, которые я сейчас использую в своей работе.

1. Humanize

Humanize обеспечивает простое, легко читаемое форматирование строк для чисел, дат и времени. Цель библиотеки – взять данные и сделать их более удобными для человека, например, путём преобразования количества секунд в более читаемую строку, такую как “2 минуты назад”. Библиотека может форматировать данные различными способами, включая форматирование чисел с помощью запятых, преобразование временных меток в относительное время и многое другое.

Я часто использую целые числа и дату и время для своих проектов по разработке данных.

Подключение

!pip install humanize

Пример (Целые числа)

# Importing library

import humanize
import datetime as dt

# Formatting  numbers with comma
a =  humanize.intcomma(951009)

# converting numbers into words
b = humanize.intword(10046328394)

#printing

print(a)
print(b)

Результат

Шесть малоизвестных библиотек Python 2023

Пример (Дата и время)

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)

Результат

Шесть малоизвестных библиотек Python 2023

С дополнительной информацией об этой библиотеке вы можете ознакомиться здесь.

2.Pendulum

Хотя на Python доступно множество библиотек для DateTime, я нахожу, что Pendulum прост в использовании при любой операции с датами. Pendulum – моя любимая библиотека для ежедневного использования на работе. Она расширяет встроенный модуль Python DateTime, добавляя более интуитивно понятный API для обработки часовых поясов и выполнения операций с датами и временем, таких как добавление временных интервалов, вычитание дат и преобразование между часовыми поясами. Она предоставляет простой, удобный для пользователя API для форматирования дат и времени.

Подключение

!pip install pendulum 

Пример

# 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)

Результат

Шесть малоизвестных библиотек Python 2023

Мне нужно написать отдельную статью об этой библиотеки, показав в ней несколько примеров. Вы можете получить дополнительную информацию о Pendulum здесь.

3.ftfy

Сталкивались ли вы с тем, что иностранный язык, присутствующий в данных, отображается некорректно? Это называется моджибаке. Моджибаке – это термин, используемый для описания искажённого или скремблированного текста, который возникает в результате проблем с кодированием или декодированием. Обычно это происходит, когда текст, который был написан в одной кодировке символов, неправильно декодируется с использованием другой кодировки. Библиотека ftfy поможет вам исправить моджибаке, что очень полезно в случаях использования NLP.

Подключение

!pip install ftfy

Пример

Шесть малоизвестных библиотек Python 2023
print(ftfy.fix_text('Correct the sentence using “ftfyâ€\x9d.'))
print(ftfy.fix_text('✔ No problems with text'))
print(ftfy.fix_text('à perturber la réflexion'))

Результат

Помимо моджибаке, ftfy исправит неправильные кодировки, неправильные окончания строк и неправильные кавычки. Согласно документации, ftfy может понимать текст, который был декодирован в любой из следующих кодировок:

  • Latin-1 (ISO-8859–1)
  • Windows-1252 (cp1252 — используется в продуктах Microsoft)
  • Windows-1251 (cp1251 — русская версия cp1252)
  • Windows-1250 (cp1250 — восточноевропейская версия cp1252)
  • ISO-8859–2 (который не совсем совпадает с Windows-1250)
  • MacRoman (используется в Mac OS 9 и более ранних версиях)
  • cp437 (используется в MS-DOS и некоторых версиях командной строки Windows)

Для получения более подробной информации, пожалуйста, ознакомьтесь с документацией здесь.

4. Sketch

Sketch – это уникальный помощник по написанию кода с искусственным интеллектом, специально разработанный для пользователей, работающих с библиотекой Pandas на Python. Он использует алгоритмы машинного обучения для понимания контекста пользовательских данных и предоставляет соответствующие предложения по коду, чтобы упростить и повысить эффективность задач обработки данных и анализа. Sketch не требует от пользователей установки каких-либо дополнительных плагинов в их IDE, что делает его быстрым и простым в использовании. Это может значительно сократить время и усилия, необходимые для выполнения задач, связанных с данными, и помочь пользователям писать лучший и более эффективный код.

Подключение

!pip install sketch

Пример

Нам нужно добавить расширение .sketch к фрейму данных Pandas, чтобы использовать эту библиотеку.

.sketch.ask

ask – это функция Sketch, которая позволяет пользователям задавать вопросы об их данных в формате естественного языка. Она предоставляет текстовый ответ на запрос пользователя.

# Importing libraries

import sketch
import pandas as pd

# Reading the data (using twitter data as an example)

df = pd.read_csv("tweets.csv")
print(df)
Шесть малоизвестных библиотек Python 2023
# Asking which columns are category type
df.sketch.ask("Which columns are category type?")

Результат

Шесть малоизвестных библиотек Python 2023
# To find the shape of the dataframe
df.sketch.ask("What is the shape of the dataframe")
Шесть малоизвестных библиотек Python 2023

.sketch.howto

howto – это функция, предоставляющая блок кода, который можно использовать в качестве отправной точки или заключения для различных задач, связанных с данными. Мы можем запросить фрагменты кода для нормализации их данных, создания новых функций, отображения данных и даже построения моделей. Это сэкономит время и позволит легко копировать и вставлять код; вам не нужно писать код вручную с нуля.

# Asking to provide code snipped for visualising the emotions
df.sketch.howto("Visualize the emotions")

Результат

Шесть малоизвестных библиотек Python 2023

.sketch.apply

функция .apply помогает создавать новые функции, анализировать поля и выполнять другие манипуляции с данными. Чтобы использовать эту функцию, нам нужно иметь учетную запись OpenAI и использовать API-ключ для выполнения задач. Я не пробовал эту функцию.

Мне понравилось пользоваться этой библиотекой, особенно функцией howto, и я нахожу её полезной.

Вы можете перейти на этот Github, чтобы узнать больше о Sketch.

5. pgeocode

pgeocode – отличная библиотека, с которой я недавно столкнулся, которая была невероятно полезна для моих проектов пространственного анализа. Например, она позволяет вам найти расстояние между двумя почтовыми кодами и предоставляет геоинформацию, используя страну и почтовый индекс в качестве входных данных.

Подключение

!pip install pgeocode

Пример

Получение геоинформации для конкретных почтовых индексов:

# Checking for country "India"

nomi = pgeocode.Nominatim('In')

# Getting geo information by passing the postcodes

nomi.query_postal_code(["620018", "620017", "620012"])

Результат

Шесть малоизвестных библиотек Python 2023

pgeocode вычисляет расстояние между двумя почтовыми кодами, используя страну и почтовые индексы в качестве входных данных. Результат указан в километрах:

# Finding a distance between two postcodes

distance = pgeocode.GeoDistance('In')

distance.query_postal_code("620018", "620012")

Результат

Шесть малоизвестных библиотек Python 2023

Вы можете ознакомиться с документацией библиотеки здесь.

6. rembg

rembg – это ещё одна полезная библиотека, которая легко удаляет фон с изображений.

Подключение

!pip install rembg

Пример

# Importing libraries
from rembg import remove
import cv2 
# path of input image (my file: image.jpeg)
input_path = 'image.jpeg'
# path for saving output image and saving as a output.jpeg
output_path = 'output.jpeg'
# Reading the input image
input = cv2.imread(input_path)
# Removing background
output = remove(input)
# Saving file 
cv2.imwrite(output_path, output)

Результат

Шесть малоизвестных библиотек Python 2023

Возможно, вы уже знакомы с некоторыми из этих библиотек, но для меня Sketch, Pendulum, pgeocode и ftfy незаменимы в моей работе по разработке данных. Я сильно полагаюсь на них в своих проектах.

Спасибо, что нашли время прочитать эту статью. Я хотел бы услышать ваши мысли и мнения, поэтому не стесняйтесь оставлять комментарии. Если вам есть что добавить, пожалуйста, не стесняйтесь комментировать!

+1
2
+1
9
+1
1
+1
0
+1
0

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *