日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

譯者 | 布加迪

Python/ target=_blank class=infotextkey>Python龐大的數據科學工具生態系統對用戶有很大的吸引力。生態系統如此龐大而豐富的唯一缺點是,有時最好的工具可能會被忽視。

下面介紹了其中幾款面向Python的最優秀的或不太知名的數據科學項目。Polars等一些項目得到了比以前更多的關注,但依然值得更廣泛的關注,ConnectorX等其他工具則是隱藏的瑰寶。

1.ConnectorX

大部分數據位于數據庫的某個地方,但計算操作通常在數據庫外面進行。為實際工作從數據庫倒騰數據可能會減慢速度。ConnectorX將數據從數據庫加載到Python中的許多常見數據整理工具中,并通過盡量減少要完成的工作量來保持高速度。

像后面討論的Polars一樣,ConnectorX在其核心使用Rust庫。這便于優化,比如說能夠在分區的同時從數據源加載數據。PostgreSQL中的數據可以通過指定分區列來加載。

除了PostgreSQL外, ConnectorX還支持從MySQL/MariaDB、SQLite、Amazon Redshift、Microsoft SQL Server、Azure SQL以及Oracle讀取數據。結果可以匯集到Pandas或PyArrow,或者通過PyArrow匯集到Modin、Dask或Polars。

2.DuckDB

使用Python的數據科學人員應該了解SQLite,這是一種用Python打包的小巧、但功能強大且快速的關系數據庫。由于它作為進程內庫來運行、而不是作為單獨的應用程序來運行,因此屬于輕量級,且響應迅速。

DuckDB有點像有人回答這個問題:“如果我們設計面向OLAP的SQLite,會怎么樣?”與其他OLAP數據庫引擎一樣,它使用列式數據存儲,并針對長時間運行的分析查詢工作負載進行了優化。但是它提供了您期望從傳統數據庫獲得的所有功能,比如ACID事務。而且沒有單獨的軟件套件需要配置。您使用單單一個pip install命令,即可在Python環境中讓它運行起來。

DuckDB可以直接攝取采用CSV、JSON或Parquet格式的數據。為了提高效率,還可以根據鍵(比如按年和按月)將生成的數據庫劃分為多個物理文件。查詢起來與任何其他基于SQL的關系數據庫相似,但擁有額外的內置特性,比如能夠獲取數據的隨機樣本或構造窗口函數。

DuckDB還有一小批實用的擴展,包括全文搜索、Excel導入/導出、直接連接到SQLite和PostgreSQL、Parquet文件導出以及支持許多常見的地理空間數據格式和類型。

3.Optimus

最繁瑣的工作之一就是清理和準備數據,用于以DataFrame為中心的項目。Optimus是一種一體化工具集,可用于加載、探索和清理數據,以及將數據寫回眾多數據源。

Optimus可以使用Pandas、Dask、CUDF(及Dask + CUDF)、Vaex或Spark作為底層數據引擎。數據可以從Arrow、Parquet、Excel、各種常見的數據庫源或平面文件格式(比如CSV和JSON)加載,并保存成這些格式。

數據操作API類似Pandas,但添加了.rows()和.cols()訪問器,以便易于執行對數據框排序、按列值篩選、根據標準更改數據或根據某些標準縮小操作范圍之類的操作。Optimus還隨帶處理器,用于處理常見的實際數據類型,比如電子郵件地址和URL。

Optimus可能存在的一個問題是,它仍在積極開發中,但上一次正式發布是在2020年。這意味著它可能不像您堆棧中的其他組件那樣是最新的。

4.Polars

如果您花費大量時間來處理DataFrame,并且對Pandas的性能限制感到沮喪,不妨使用Polars。這個面向Python的DataFrame庫提供了類似Pandas的便捷語法。

不過與Pandas不同的是,Polars使用了一個用Rust編寫的庫,可以直接最大限度地利用您的硬件。您不需要使用特殊語法來利用并行處理或SIMD等提升性能的功能,都是自動可以利用的。就連像從CSV文件讀取這樣的簡單操作也更快了。

Polars還提供了即時和延遲執行模式,因此查詢可以立即執行,也可以延遲到需要時執行。它還提供了流式API,用于增量處理查詢,不過許多函數還不能使用流式API。而Rust開發人員可以使用pyo3制作自己的Polars擴展。

5.Snakemake

數據科學工作流很難建立,更難以一致的、可預測的方式建立。Snakemake的創建就是為了實現這一點:在Python中自動建立數據分析機制,同時確保其他人都能得到與您相同的結果。許多現有的數據科學項目都依賴Snakemake。數據科學工作流中的不定因素越多,您就越有可能受益于用Snakemaker自動化處理工作流。

Snakemake工作流類似GNU make工作流:您用規則定義想要創建的東西,這些規則定義了它們接受什么、輸出什么以及執行什么命令來做到這一點。工作流規則可以是多線程的(假設這會給它們帶來好處),配置數據可以從JSON/YAML文件通過管道導入。您還可以在工作流中定義函數來轉換用于規則中的數據,并將在每個步驟采取的操作寫入到日志。

Snakemake作業旨在可移植——它們可以部署到任何Kube.NETes管理的環境中,或部署到特定的云環境中,比如google Cloud Life Sciences或AWS上的Tibanna。工作流可以被“凍結”,以使用一些具體的軟件包,并且任何成功執行的工作流都可以自動生成單元測試,并加以存儲。若是長期存檔,您可以將工作流存儲為打包文件(tarball)。

原文標題:5 newer data science tools you should be using with Python,作者:Serdar Yegulalp

分享到:
標簽:Python
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定