货物

惊人但鲜为人知的 Python 库

Python 程序员总是在寻找新的库,以改进数据工程和商业智能项目的工作。

在这篇文章中,我们看到了一些鲜为人知但非常有用的 python 库:

1.钟摆

虽然很多图书馆都可以在 蟒蛇 对于 DateTime,我发现 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)
输出

2. 飞飞

你遇到过数据中外文显示不正确的情况吗? 这称为莫吉巴克。 Mojibake 是一个术语,用于描述由于编码或解码问题而出现的乱码或乱码文本。 当使用一种字符编码编写的文本使用不同的编码被错误解码时,通常会发生这种情况。 ftfy python 库将帮助您修复 Mojibake,这在 NLP 用例中非常有用。

安装
!pip 安装 ftfy
例子
print(ftfy.fix_text('使用“ftfy”\x9d 更正句子。')) print(ftfy.fix_text('““文本没有问题”)) print(ftfy.fix_text('Ã perturber la réflexion '))
输出

除了 Mojibake 之外,ftfy 还将修复错误的编码、错误的行尾和错误的引号。 可以理解已解码为以下编码之一的文本:

  • Latin-1 (ISO-8859–1)
  • Windows-1252(cp1252——用于微软产品)
  • Windows-1251(cp1251 — cp1252 的俄语版本)
  • Windows-1250(cp1250 — cp1252 的东欧版本)
  • ISO-8859–2(与 Windows-1250 不完全相同)
  • MacRoman(用于 Mac OS 9 及更早版本)
  • cp437(用于 MS-DOS 和某些版本的 Windows 命令提示符)

3。 素描

Sketch 是一款独特的 AI 编码助手,专为在 Python 中使用 pandas 库的用户而设计。 它使用机器学习算法来理解用户数据的上下文,并提供相关的代码建议,使数据操作和分析任务更容易、更高效。 Sketch 不需要用户在他们的 IDE 中安装任何额外的插件,因此使用起来又快又容易。 这可以显着减少数据相关任务所需的时间和精力,并帮助用户编写更好、更高效的代码。

安装
!pip 安装草图
例子

我们需要向 pandas dataframe 添加一个 .sketch 扩展名才能使用这个库。

素描问

 是 Sketch 的一项功能,允许用户以自然语言格式询问有关其数据的问题。 为用户的查询提供基于文本的响应。

# 导入库 import sketch import pandas as pd # 读取数据(以推特数据为例) df = pd.read_csv("tweets.csv") print(df)
# 询问哪些列是类别类型 df.sketch.ask("哪些列是类别类型?")
输出
# 找到数据框的形状 df.sketch.ask("数据框的形状是什么")

.sketch.howto

HOWTO 是一种提供代码块的功能,可用作各种数据相关任务的起点或终点。 我们可以要求代码片段来规范化他们的数据、创建新功能、跟踪数据,甚至构建模型。 这将节省时间并使复制和粘贴代码变得容易; 您不必从头开始手动编写代码。

# 要求提供用于可视化情绪的代码片段 df.sketch.howto("Visualize the emotions")
输出

.sketch.应用

.apply 函数 它有助于生成新功能、解析字段和执行其他数据操作。 要使用此功能,我们需要有一个 OpenAI 帐户并使用 API 密钥来执行任务。 我还没有尝试过这个功能。

我喜欢使用这个库,尤其是 如何 它有效,我发现它很有用。

4. 地理编码

“pgeocode”是我最近偶然发现的一个优秀的库,它对我的​​空间分析项目非常有用。 例如,它允许您查找两个邮政编码之间的距离,并通过将国家和邮政编码作为输入来提供地理信息。

安装
!pip 安装 pgeocode
例子

获取特定邮政编码的地理信息

# 检查国家“印度” nomi = pgeocode.Nominatim('In') # 通过传递邮政编码获取地理信息 nomi.query_postal_code(["620018", "620017", "620012"])
输出

“pgeocode”通过将国家和邮政编码作为输入来计算两个邮政编码之间的距离。 结果以公里表示。

# 查找两个邮政编码之间的距离 distance = pgeocode.GeoDistance('In') distance.query_postal_code("620018", "620012")
输出

5.雷姆格

rembg 是另一个有用的库,可以轻松地从图像中删除背景。

安装
!pip 安装 rembg
例子
# 导入库
from rembg import remove import cv2 # 输入图像的路径(我的文件:image.jpeg) input_path = 'image.jpeg' # 保存输出图像和保存为 output.jpeg 的路径 output_path = 'output.jpeg' # 读取输入image input = cv2.imread(input_path) # 移除背景 output = remove(input) # 保存文件 cv2.imwrite(output_path, output)
输出

您可能已经熟悉其中一些库,但对我来说,Sketch、Pendulum、pgeocode 和 ftfy 对于我的数据工程工作来说是不可或缺的。 我的项目非常依赖它们。

6.人性化

Humanize”为数字、日期和时间提供了简单易读的字符串格式。 该库的目标是获取数据并使其更加用户友好,例如将秒数转换为更易读的字符串,如“2 分钟前”。 该库可以通过多种方式格式化数据,包括用逗号格式化数字、将时间戳转换为相对时间等等。

我经常在我的数据工程项目中使用整数和时间戳。

安装
!pip 安装人性化
示例(整数)
# 导入库 import humanize import datetime as dt # 用逗号格式化数字 a = humanize.intcomma(951009) # 将数字转换成单词 b = humanize.intword(10046328394) #printing print(a) print(b)
输出
示例(日期和时间)
import humanize import datetime as dt a = humanize.naturaldate(dt.date(2012, 6, 5)) b = humanize.naturalday(dt.date(2012, 6, 5)) 打印(a) 打印(b)

Ercole Palmeri

创新通讯
不要错过有关创新的最重要新闻。 注册以通过电子邮件接收它们。
标签: 蟒蛇

Articoli最新回应

卡塔尼亚综合诊所的 Apple 观众对增强现实进行创新干预

卡塔尼亚综合诊所使用 Apple Vision Pro 商业查看器进行了眼部整形手术……

3 2024五月

儿童涂色页的好处 - 适合所有年龄段的魔法世界

通过着色培养精细运动技能可以帮助孩子们为写作等更复杂的技能做好准备。填色…

2 2024五月

未来已来:航运业如何彻底改变全球经济

海军部门是真正的全球经济力量,已迈向 150 亿美元的市场……

1 2024五月

出版商和 OpenAI 签署协议以规范人工智能处理的信息流

上周一,英国《金融时报》宣布与 OpenAI 达成协议。英国《金融时报》授予其世界级新闻报道许可……

四月30 2024