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中文網其他相關文章!