成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

介紹一款進階版的 Pandas 數據分析神器:Polars

開發 后端
今天就來介紹另外一個數據處理與分析工具,叫做??Polars??,它在數據處理的速度上更快,當然里面還包括兩種API,一種是??Eager API??,另一種則是??Lazy API??,其中??Eager API??和??Pandas??的使用類似,語法類似差不太多,立即執行就能產生結果。

相信對于不少的數據分析從業者來說呢,用的比較多的是??Pandas??以及??SQL??這兩種工具,??Pandas??不但能夠對數據集進行清理與分析,并且還能夠繪制各種各樣的炫酷的圖表,但是遇到數據集很大的時候要是還使用??Pandas??來處理顯然有點力不從心。

今天就來介紹另外一個數據處理與分析工具,叫做??Polars??,它在數據處理的速度上更快,當然里面還包括兩種API,一種是??Eager API??,另一種則是??Lazy API??,其中??Eager API????Pandas??的使用類似,語法類似差不太多,立即執行就能產生結果。

圖片

??Lazy API????Spark??很相似,會有并行以及對查詢邏輯優化的操作。

模塊的安裝與導入

我們先來進行模塊的安裝,使用??pip??命令

pip install polars

在安裝成功之后,我們分別用??Pandas????Polars??來讀取數據,看一下各自性能上的差異,我們導入會要用到的模塊

import pandas as pd
import polars as pl
import matplotlib.pyplot as plt
%matplotlib inline

用??Pandas??讀取文件

本次使用的數據集是某網站注冊用戶的用戶名數據,總共有360MB大小,我們先用??Pandas??模塊來讀取該??csv??文件

%%time 
df = pd.read_csv("users.csv")
df.head()

output

圖片

可以看到用??Pandas??讀取??CSV??文件總共花費了12秒的時間,數據集總共有兩列,一列是用戶名稱,以及用戶名稱重復的次數“n”,我們來對數據集進行排序,調用的是??sort_values()??方法,代碼如下

%%time 
df.sort_values("n", ascending=False).head()

output

圖片

用??Polars??來讀取操作文件

下面我們用??Polars??模塊來讀取并操作文件,看看所需要的多久的時間,代碼如下

%%time 
data = pl.read_csv("users.csv")
data.head()

output

圖片

可以看到用??polars??模塊來讀取數據僅僅只花費了730毫秒的時間,可以說是快了不少的,我們根據“n”這一列來對數據集進行排序,代碼如下

%%time
data.sort(by="n", reverse=True).head()

output

圖片

對數據集進行排序所消耗的時間為1.39秒,接下來我們用polars模塊來對數據集進行一個初步的探索性分析,數據集總共有哪些列、列名都有哪些,我們還是以熟知“泰坦尼克號”數據集為例

df_titanic = pd.read_csv("titanic.csv")
df_titanic.columns

output

['PassengerId',
'Survived',
'Pclass',
'Name',
'Sex',
'Age',
......]

??Pandas??一樣輸出列名調用的是??columns??方法,然后我們來看一下數據集總共是有幾行幾列的,

df_titanic.shape

output

(891, 12)

看一下數據集中每一列的數據類型

df_titanic.dtypes

output

[polars.datatypes.Int64,
polars.datatypes.Int64,
polars.datatypes.Int64,
polars.datatypes.Utf8,
polars.datatypes.Utf8,
polars.datatypes.Float64,
......]

填充空值與數據的統計分析

我們來看一下數據集當中空值的分布情況,調用??null_count()??方法

df_titanic.null_count()

output

圖片

我們可以看到“Age”以及“Cabin”兩列存在著空值,我們可以嘗試用平均值來進行填充,代碼如下

df_titanic["Age"] = df_titanic["Age"].fill_nan(df_titanic["Age"].mean())

計算某一列的平均值只需要調用??mean()??方法即可,那么中位數、最大/最小值的計算也是同樣的道理,代碼如下

print(f'Median Age: {df_titanic["Age"].median()}')
print(f'Average Age: {df_titanic["Age"].mean()}')
print(f'Maximum Age: {df_titanic["Age"].max()}')
print(f'Minimum Age: {df_titanic["Age"].min()}')

output

Median Age: 29.69911764705882
Average Age: 29.699117647058817
Maximum Age: 80.0
Minimum Age: 0.42

數據的篩選與可視化

我們篩選出年齡大于40歲的乘客有哪些,代碼如下

df_titanic[df_titanic["Age"] > 40]

output

圖片

最后我們簡單地來繪制一張圖表,代碼如下

fig, ax = plt.subplots(figsize=(10, 5))
ax.boxplot(df_titanic["Age"])
plt.xticks(rotation=90)
plt.xlabel('Age Column')
plt.ylabel('Age')
plt.show()

output

圖片

總體來說呢,??polars??在數據分析與處理上面和??Pandas??模塊有很多相似的地方,其中會有一部分的API存在著差異,感興趣的童鞋可以參考其官網:https://www.pola.rs/

責任編輯:龐桂玉 來源: 數據分析專欄
相關推薦

2022-03-24 09:36:28

Pandas數據分析代碼

2024-01-25 10:40:11

AutoProfil開源分析工具

2022-10-09 10:11:30

Python爬蟲神器

2019-02-25 10:18:43

工具代碼測試

2022-06-17 11:10:43

PandasPolarsPython

2011-08-09 09:16:44

Eclipse

2021-04-27 09:00:59

PythonAidLearning編程神器

2021-01-27 13:16:39

ScreenLinux命令

2021-02-16 10:58:50

ScreenLinux命令

2014-01-13 15:00:51

InxiLinux硬件

2022-04-20 09:26:08

Mock前端開發工具

2020-08-28 10:40:13

PythonFaker數據

2022-03-04 09:05:55

StarRocks數據湖數據質量

2023-09-06 08:19:53

2024-12-27 12:10:58

2023-06-08 08:46:37

Motrix下載工具

2023-04-20 16:48:22

PandasPolarsPython

2024-01-09 13:58:22

PandasPython數據分析

2015-03-26 13:22:04

IBMTwitter數據分析

2025-03-18 08:20:58

數據庫管理工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黄色一级大片视频 | 中文字幕在线播放第一页 | 日本免费一区二区三区四区 | 亚洲国产欧美日韩 | av大片在线| 91精品亚洲 | 一级毛片网 | 亚洲精品国产偷自在线观看 | 日韩欧美三级电影 | 黄色片免费在线观看 | 国产精品国产a级 | 中文精品一区二区 | 国产精品成人一区二区三区吃奶 | 日韩91在线 | 国产一区久久久 | 精品国产精品国产偷麻豆 | 亚洲三级在线观看 | 91免费看片神器 | 亚洲成人精| 一区视频在线 | 久久久精品 | 午夜一级做a爰片久久毛片 精品综合 | 成人av免费在线观看 | 国产精品久久久久久久免费大片 | 久久亚洲欧美日韩精品专区 | 一级片子 | 欧美黄色绿像 | 麻豆av在线免费观看 | h在线看 | 黄色大片在线免费观看 | 精品久久久精品 | 日韩av三区 | 在线观看特色大片免费网站 | 中文字幕乱码一区二区三区 | 欧美日韩精品一区 | 久草精品视频 | 日本久久一区二区三区 | 日韩成人国产 | 国产农村妇女毛片精品久久麻豆 | 激情av网站| 久久久久无码国产精品一区 |