我需要从名称中提取标题,但无法理解其工作原理。我提供了以下代码:
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等每个名称的标题。
答案 0 :(得分:0)
您的代码使用正则表达式使用pandas.Series.str.extract函数从名称中提取标题
pandas.series.str.extract-将正则表达式中的捕获组提取为DataFrame中的列。
' ([A-Za-z]+)\.'
这是您代码中的正则表达式模式,可找到存在。的地方Name
中的字符串部分。
[A-Za-z]
-模式的这一部分在a-z和A-Z字母范围之间寻找字符
+
指出可以有多个字符
\.
在字符串的一部分之后寻找。。
上面的链接中提供了一个示例,该示例从中提取零件 字符串并将零件放在单独的列中
答案 1 :(得分:-1)
我发现此特定链接的响应对于如何使用'str's extract方法以及如何将扩展值从True更改为False并将字符串放入列和系列中非常有帮助。