【发布时间】:2019-05-27 12:45:33
【问题描述】:
我想将个人姓名拆分为多个字符串。我可以很容易地提取名字和姓氏,但是在提取中间名或名字时遇到问题,因为它们在每种情况下都完全不同。
数据如下所示:
ID| Complete_Name | Type
1 | JERRY, Ben | "I"
2 | VON HELSINKI, Olga | "I"
3 | JENSEN, James Goodboy Dean | "I"
4 | THE COMPANY | "C"
5 | CRUZ, Juan S. de la | "I"
因此,有些名称只有名字和姓氏,而名称则介于两者之间或两个中间名之间。如何从 Pandas 数据框中提取中间名?我已经可以提取名字和姓氏了。
df = pd.read_csv("list.pip", sep="|")
df["First Name"] =
np.where(df["Type"]=="I",df['Complete_Name'].str.split(',').str.get(1) , df[""])
df["Last Name"] = np.where(df["Type"]=="I",df['Complete_Name'].str.split(' ').str.get(1) , df[""])
想要的结果应该是这样的:
ID| Complete_Name | Type | First Name | Middle Name | Last Name
1 | JERRY, Ben | "I" | Ben | | JERRY
2 | VON HELSINKI, Olga | "I" | Olga | |
3 | JENSEN, James Goodboy Dean | "I" | James | Goodboy Dean| VON HELSINKI
4 | THE COMPANY | "C" | | |
5 | CRUZ, Juan S. de la | "I" | Juan | S. de la | CRUZ
【问题讨论】:
-
^ 不,不是那个。
标签: python regex string pandas split