中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么將Pandas迭代速度加快150倍

發布時間:2021-11-03 18:09:04 來源:億速云 閱讀:144 作者:iii 欄目:編程語言

本篇內容介紹了“怎么將Pandas迭代速度加快150倍”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

做一個數據集

把觀點論述清楚最簡單的方法是聲明一個單列數據框對象,其整數值范圍為1到100000:

怎么將Pandas迭代速度加快150倍

真的不需要任何更為復雜的東西來解決Pandas的速度問題。為驗證一切進展順利,以下是數據集的前幾行和整體形狀:

怎么將Pandas迭代速度加快150倍

好了,準備工作已做足,現在一起看看如何遍歷以及如何不遍歷數據框的行。首先介紹如何不進行選擇。

以下是你不應該做的事

啊,筆者一直在使用(和過度使用)如此多的iterrows()方法。它在默認情況下速度很慢,但你知道筆者費心去尋找替代方案的原因(目光短淺)。

為證明你不該使用iterrows()方法在數據框中進行遍歷,筆者會做個快速演示——聲明一個變量并將其初始設置為0——然后在每次迭代時按Values屬性的當前值進行遞增。

如果你想知道%%time魔法函數返回單元格完成所有操作所需的秒數/毫秒數。

一起看看該函數是如何運行的:

怎么將Pandas迭代速度加快150倍

你現在可能會想,用15秒遍歷100000行并遞增一些外部變量的值并不算多。但事實上是——請看下一部分的闡述原因。

以下是你應該做的事

現在有一個神奇的方法能進行挽救——itertuples()。顧名思義,itertuples()循環遍歷數據框的行,然后返回一個命名元組。這就是不能用括號[]訪問這些值,而是需要使用.符號的原因。

現在將演示與幾分鐘前相同的示例,但使用的是itertuples()方法:

怎么將Pandas迭代速度加快150倍

瞧瞧!使用itertuples()進行同樣的運算,速度快了約154倍!現在想象一下你的日常工作場景,你正在處理上百萬條行——itertuples()可以幫你節省大量時間。

在這個簡單的例子中,我們已經見識到對代碼進行的小小改動就能對整體結果產生的巨大影響。

這不意味itertuples()在每個場景下都會比iterrows()快150倍,但在某種程度上這確實意味著每次都會快一些。

“怎么將Pandas迭代速度加快150倍”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖远县| 唐河县| 襄垣县| 通城县| 泸州市| 潮州市| 辉县市| 清丰县| 万全县| 迭部县| 日照市| 怀仁县| 永城市| 安多县| 怀宁县| 威远县| 通辽市| 都昌县| 凤冈县| 西宁市| 大同县| 宁国市| 东安县| 昭觉县| 得荣县| 鄂州市| 平远县| 新野县| 青阳县| 桐城市| 原平市| 太白县| 贺州市| 闵行区| 高阳县| 罗江县| 界首市| 大荔县| 新昌县| 白银市| 望江县|