我需要对特定列中的字符串进行切片,并在其中创建一个带有切片的新列。即现有的列A:"CODE.45.66787",用于创建列B:"CODE.45"非常感谢。
df["B"] = df["A"].str.rsplit(".", 1).str[0]
print(df)
A B
0 CODE.45.6787 CODE.45
为了通用,我不会假设您的字符串都只有2个句号。因此,我不会从右边分割你的琴弦,而是会继续从左边分割琴弦。为此,我们可以这样做:
df['B'] = df['A'].str.split('.').str[0:2].str.join('.')
Demo
df = pd.DataFrame({'A': ['CODE.45.6787', 'CODE.12.3456.78']})
df['B'] = df['A'].str.split('.').str[0:2].str.join('.')
print(df)
A B
0 CODE.45.6787 CODE.45
1 CODE.12.3456.78 CODE.12