<p><strong>要点:</strong>使用函数<code>str.split(' ', n=1, expand=True)</code></p>
<p>我在你的例子中没有看到姓,所以我只做了一个分割。您可以使用参数n=1或n=2等来生成任意多个</p>
<p><strong>首先:</strong><a href="https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.str.strip.html" rel="nofollow noreferrer">strip</a>从你的名字中多出一些空格,然后<a href="https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.str.split.html" rel="nofollow noreferrer">split</a>名字在第一个空格上:</p>
<pre><code>df = pd.DataFrame(data)
split_names = (df['Fullname']
.str.strip()
.str.split(' ', n=1, expand=True)
.rename(columns={0:'Title', 1:'First_name'})
)
</code></pre>
<p><strong>然后:</strong>使用<a href="https://pandas.pydata.org/pandas-docs/version/0.23.4/generated/pandas.concat.html" rel="nofollow noreferrer">pd.concat()</a>将此拆分名称添加到数据帧:</p>
^{pr2}$
<p><strong>结果:</strong></p>
<pre><code>print(df)
Name Fullname num Title First_name
0 Braund Mr. Owen Harris 1 Mr. Owen Harris
1 Heikkinen Miss. Laina 0 Miss. Laina
2 Allen Mr. William Henry 0 Mr. William Henry
3 Moran Mr. James 0 Mr. James
4 McCarthy Mr. Timothy J 0 Mr. Timothy J
</code></pre>