当我们在Pandas DataFrame中操作数据时,有时候需要把一个文本列分成两列。例如,有一个“姓名”列,包含了“姓”和“名”两个部分,我们需要将其分成两个列。
下面是完整的攻略:
首先,我们需要导入Pandas库,准备一份数据来实现这个操作:
import pandas as pd
data = {'姓名': ['张三', '李四', '王五']}
df = pd.DataFrame(data)
print(df)
输出结果:
姓名
0 张三
1 李四
2 王五
接下来,我们需要利用Pandas中的str
方法和split()
函数来将“姓名”列分成“姓”和“名”两个列:
df[['姓', '名']] = df['姓名'].str.split(expand=True)
print(df)
输出结果:
姓名 姓 名
0 张三 张 三
1 李四 李 四
2 王五 王 五
在split()
函数中,expand=True
表示将分割结果转换为DataFrame类型,而[['姓', '名']]
则表示将结果分别赋值给“姓”和“名”两个列。
至此,我们已经成功将“姓名”列分成了“姓”和“名”两个列。
当然,如果“姓名”列中存在复杂的分割规则,我们可以根据具体情况使用不同的分割方式来实现操作,例如可以使用正则表达式、自定义函数等方法,以达到我们想要的效果。