首頁  >  文章  >  後端開發  >  如何從 Pandas 的字串列中提取數值?

如何從 Pandas 的字串列中提取數值?

Linda Hamilton
Linda Hamilton原創
2024-10-24 13:28:31958瀏覽

How to Extract Numeric Values from String Columns in Pandas?

Pandas 資料運算:從字串列中擷取數字

在Pandas 中處理資料框時,有必要執行各種操作來提取有意義的資訊。其中一項任務可能涉及從資料框列中包含的字串中提取數值。在這裡,我們探索一個特定的場景來滿足此要求。

考慮以下資料框,其中包含名為「A」的列,其中包含字串值:

<code class="python">import pandas as pd
import numpy as np
df = pd.DataFrame({'A':['1a',np.nan,'10a','100b','0b'],
                   })
print(df)</code>

目標是僅從「A」列中的每個儲存格中提取數字,從而產生一個新的資料框,其中「A」列僅包含數值。

要實現這一目標,可以利用強大的 str Pandas 中的 .extract 函數。透過在str.extract 表達式中使用正規表示式捕獲組,可以從資料幀中的每個字串中分離和提取數字:

<code class="python">df.A.str.extract('(\d+)')</code>

正則表達式模式'(d )' 匹配一個或更多數字(d) 並將它們捕獲為一組(括號( 和))。執行上述程式碼會產生以下結果:

<code class="python">    A
0   1
1   NaN
2   10
3   100
4   0
Name: A, dtype: object</code>

「A」列中的原始字串已成功轉換為數值,而對於缺失值的儲存格保留 NaN。事實證明,這種方法對於從字串中提取整數特別有效,使其成為資料分析和操作場景中的寶貴工具。

以上是如何從 Pandas 的字串列中提取數值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn