Pandas 2.1發(fā)布更新功能介紹
引言
2023年3月1日,Pandas 發(fā)布了2.0版本。6個(gè)月后(8月30日),更新了新的2.1版。讓我們看看他有什么重要的更新。
更好的PyArrow支持
PyArrow是在Panda 2.0中新加入的后端,對(duì)于大數(shù)據(jù)來(lái)說(shuō)提供了優(yōu)于NumPy的性能。Pandas 2.1增強(qiáng)了對(duì)PyArrow的支持。官方在這次更新中使用最大的高亮字體宣布 PyArrow 將是 Pandas 3.0的基礎(chǔ)依賴,這說(shuō)明Panda 是認(rèn)定了PyArrow了。
映射所有數(shù)組類型時(shí)可以忽略NaN類值
在以前版本,可空類型上調(diào)用map會(huì)在存在類似nan的值時(shí)觸發(fā)錯(cuò)誤。而現(xiàn)在可以設(shè)定na_action= " ignore "參數(shù),將忽略所有類型數(shù)組中的nan值。
以下是發(fā)行說(shuō)明中的一個(gè)例子:
In [5]: ser = pd.Series(["a", "b", np.nan], dtype="category") In [6]: ser.map(str.upper, na_action="ignore") Out[6]: 0 A 1 B 2 NaN dtype: category Categories (2, object): ['A', 'B'] ##no errors !
字符串的默認(rèn)類型
默認(rèn)情況下,所有字符串都存儲(chǔ)在具有NumPy對(duì)象dtype的列中,如果你安裝了PyArrow,則會(huì)將所有字符串推斷為PyArrow支持的字符串,這個(gè)選項(xiàng)需要使用這個(gè)參數(shù)設(shè)置:
pd.options.future.infer_string = True
Copy-On-Write改進(jìn)
寫(xiě)時(shí)復(fù)制在很久以前就出現(xiàn)了。在Pandas中有時(shí)你對(duì)數(shù)據(jù)做一些操作,修改的不是數(shù)據(jù)源的副本,而是數(shù)據(jù)源本身。例子:
In [5]: pd.options.mode.copy_on_write = True
In [6]: df = pd.DataFrame({"foo": [1, 2, 3], "bar": [4, 5, 6]})
In [7]: subset = df["foo"]
In [8]: subset.iloc[0] = 100
In [9]: df
Out[9]:
foo bar
0 1 4
1 2 5
2 3 6寫(xiě)時(shí)復(fù)制是一種防止意外可變性的機(jī)制。當(dāng)從其他數(shù)據(jù)推斷數(shù)據(jù)時(shí),可以保證只更改副本。這意味著代碼將更加統(tǒng)一。Pandas將識(shí)別何時(shí)復(fù)制對(duì)象,并且只在必要時(shí)復(fù)制對(duì)象。在Pandas 2.1中,花了很多精力使許多地方的Copy-On-Write保持一致。
新的日期方法
在Pandas 2.1中,增加了一組新處理日期的新方法。
以下是一些最值得注意的方法:
- Series.dt.is_month_start,
- Series.dt.is_month_end,
- Series.dt.is_year_start,
- Series.dt.is_year_end,
- Series.dt.is_quarter_start,
- Series.dt.is_quarter_end,
- Series.dt.days_in_month,
- Series.dt.unit,
- Series.dt.normalize,
- Series.dt.day_name(),
- Series.dt.month_name(),
這些方法對(duì)我們實(shí)際應(yīng)用來(lái)說(shuō)還是很好的
Python 3.9
pandas 2.1.0支持的最低版本是Python 3.9,也就是說(shuō)我們?nèi)绻械桶姹镜腜ython項(xiàng)目,要盡快升級(jí)了,或者說(shuō)新項(xiàng)目的話最低也要3.9了
總結(jié)
在這次更新中提到了Pandas3.0,說(shuō)明官方已經(jīng)開(kāi)始對(duì)它進(jìn)行設(shè)計(jì)了,而且也強(qiáng)調(diào)了PyArrow的重要性,所以要用好Pandas,PyArrow的基礎(chǔ)是需要掌握的。
以上就是Pandas 2.1發(fā)布更新功能介紹的詳細(xì)內(nèi)容,更多關(guān)于Pandas 2.1發(fā)布更新的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Pycharm以root權(quán)限運(yùn)行腳本的方法
今天小編就為大家分享一篇Pycharm以root權(quán)限運(yùn)行腳本的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
Python中使用select模塊實(shí)現(xiàn)非阻塞的IO
這篇文章主要介紹了Python中使用select模塊實(shí)現(xiàn)非阻塞的IO,本文使用一個(gè)簡(jiǎn)單聊天室程序講解Python中的select模塊使用,需要的朋友可以參考下2015-02-02
pytorch加載自定義網(wǎng)絡(luò)權(quán)重的實(shí)現(xiàn)
今天小編就為大家分享一篇pytorch加載自定義網(wǎng)絡(luò)權(quán)重的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
總結(jié)Pyinstaller的坑及終極解決方法(小結(jié))
這篇文章主要介紹了總結(jié)Pyinstaller的坑及終極解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
使用vscode搭建pywebview集成vue項(xiàng)目實(shí)踐
這篇文章主要介紹了使用vscode搭建pywebview集成vue項(xiàng)目實(shí)踐,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-06-06
Python?Flask框架實(shí)現(xiàn)小紅書(shū)圖片無(wú)水印解析下載
這篇文章主要為大家介紹了Python?Flask框架實(shí)現(xiàn)小紅書(shū)圖片無(wú)水印解析下載,需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11

