在Python中,可以使用split()函数将name拆分成名字、中间名和姓氏,并将它们同时赋值到Pandas列。下面是一个示例代码:
import pandas as pd
def split_name(name):
names = name.split()
first_name = names[0]
middle_name = names[1] if len(names) > 2 else ""
last_name = names[-1]
return first_name, middle_name, last_name
# 创建一个包含name列的DataFrame
data = {'name': ['John Smith', 'Jane Doe', 'Michael Jordan']}
df = pd.DataFrame(data)
# 使用split_name函数将name拆分并赋值到新的列
df[['first_name', 'middle_name', 'last_name']] = df['name'].apply(lambda x: pd.Series(split_name(x)))
# 打印结果
print(df)
这段代码首先定义了一个split_name函数,它接受一个name参数,并使用split()函数将name拆分成名字、中间名和姓氏。如果name中没有中间名,则将中间名设为空字符串。然后,我们创建了一个包含name列的DataFrame,并使用apply()函数和lambda表达式将split_name函数应用于每个name值。最后,我们将拆分后的结果赋值给新的列first_name、middle_name和last_name。
输出结果如下:
name first_name middle_name last_name
0 John Smith John Smith
1 Jane Doe Jane Doe
2 Michael Jordan Michael Jordan
这样,我们成功地将name拆分成了名字、中间名和姓氏,并将它们同时赋值到了Pandas列中。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云