簡體   English   中英

從數據集中提取數據

[英]Extract data from dataset

我需要從名稱中提取標題,但無法理解它是如何工作的。 我提供了以下代碼:

combine = [traindata , testdata] 

for dataset in combine:
    dataset["title"] = dataset["Name"].str.extract(' ([A-Za-z]+)\.' , expand = False )

沒有錯誤,但我需要了解上述代碼的工作原理

姓名

Braund, Mr. Owen Harris

Cumings, Mrs. John Bradley (Florence Briggs Thayer)

Heikkinen, Miss. Laina

Futrelle, Mrs. Jacques Heath (Lily May Peel)

Allen, Mr. William Henry

Moran, Mr. James

上面是來自 csv 文件的名稱特征,在dataset["title"]它存儲了每個名稱的標題,即 mr 、 Miss 、 master 等

您的代碼使用使用正則表達式的 pandas.Series.str.extract 函數從名稱中提取標題

pandas.series.str.extract - 將正則表達式 pat 中的捕獲組提取為 DataFrame 中的列。

' ([A-Za-z]+)\\.' 這是您的代碼中的一個正則表達式模式,它可以在任何地方找到Name的字符串部分 存在。

[A-Za-z] - 這部分模式查找 az 和 AZ 字母范圍之間的字符

+它指出可以有多個字符

\\. 尋找以下. 在字符串的一部分之后

上面的鏈接提供了一個示例,它從字符串中提取一部分並將這些部分放在單獨的列中

我發現這個帶有鏈接的特定響應對於如何使用“str”的提取方法以及將字符串放在列和系列中並將擴展值從 True 更改為 False 非常有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM