0
本文作者: skura | 2019-05-03 09:18 |
雷鋒網(wǎng) AI 科技評(píng)論按,數(shù)據(jù)處理是數(shù)據(jù)工程師經(jīng)常要面對(duì)的問題,今天要推薦的是一個(gè)和數(shù)據(jù)處理相關(guān)的 DataFrame 庫(kù)——cuDF。
cuDF 是一個(gè)基于 Apache Arrow 列內(nèi)存格式的數(shù)據(jù)幀庫(kù),它是一個(gè) GPU DataFrame 庫(kù),可以進(jìn)行加載,連接,聚合,過濾等數(shù)據(jù)操作。
cuDF 提供了類似 pandas 的 API,數(shù)據(jù)工程師和數(shù)據(jù)科學(xué)家都很熟悉它們,他們可以使用它輕松地加快工作流程,而無(wú)需深入了解 CUDA 編程的細(xì)節(jié)。
例如,以下代碼段下載 CSV,然后使用 GPU 將其解析為行和列并運(yùn)行計(jì)算:
import cudf, io, requests
from io import StringIO
url="https://github.com/plotly/datasets/raw/master/tips.csv"content = requests.get(url).content.decode('utf-8')
tips_df = cudf.read_csv(StringIO(content))
tips_df['tip_percentage'] = tips_df['tip']/tips_df['total_bill']*100
# display average tip by dining party size
print(tips_df.groupby('size').tip_percentage.mean())
得到的輸出為:
size
1 21.729201548727808
2 16.571919173482897
3 15.215685473711837
4 14.594900639351332
5 14.149548965142023
6 15.622920072028379
Name: tip_percentage, dtype: float64
想查看更多示例,可以瀏覽的完整 API 文檔,或查看更詳細(xì)的說(shuō)明。
那么如何安裝這個(gè)工具?請(qǐng)參閱 Demo Docker Repository,根據(jù)正在運(yùn)行的 NVIDIA CUDA 版本選擇一個(gè)標(biāo)簽。
安裝
conda
cuDF 可以通過渠道安裝 conda(miniconda,或完整的 Anaconda 發(fā)行版) rapidsai:
# for CUDA 9.2
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults \
cudf=0.6 python=3.6 cudatoolkit=9.2
# or, for CUDA 10.0
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults \
cudf=0.6 python=3.6 cudatoolkit=10.0
我們還提供從我們最新開發(fā)分支的尖端構(gòu)建的夜間 conda 包。
Pip
cuDF 也可以用 PyPi 安裝。
# for CUDA 9.2
python3.6 -m pip install cudf-cuda92==0.6
# or, for CUDA 10.0
python3.6 -m pip install cudf-cuda100==0.6
注意:只有 Linux 系統(tǒng)支持 cuDF,并且 Python 的版本必須是 3.6 或 3.7 版本。
via : https://github.com/rapidsai/cudf
雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。