如何删除字符串数据框列中第 n 个之后的所有字符?

Ewd*_*lam 1 python string-length dataframe pandas

让我们以这个简单的数据框为例:

df = pd.DataFrame(dict(Name=['abc','d',np.nan,'vbnc'],NoMatter=[0,6,2,3]))
   Name  NoMatter
0   abc         0
1     d         6
2   NaN         2
3  vbnc         3
Run Code Online (Sandbox Code Playgroud)

我想在列 Name 中删除前两个字符串之后的所有字符。

预期输出:

  Name  NoMatter
0   ab         0
1    d         6
2  NaN         2
3   vb         3
Run Code Online (Sandbox Code Playgroud)

请问我该怎么办?

Qua*_*ang 5

你可以做:

df['Name'] = df.Name.str[:2]
Run Code Online (Sandbox Code Playgroud)

输出:

  Name  NoMatter
0   ab         0
1    d         6
2  NaN         2
3   vb         3
Run Code Online (Sandbox Code Playgroud)