【发布时间】:2021-07-28 13:23:02
【问题描述】:
我需要对特定列中的字符串进行切片,并在其中创建一个包含切片的新列。 即现有的 col A: 'CODE.45.6787' 用于创建 col B: 'CODE.45' 谢谢!
【问题讨论】:
-
A列的值是否总是相同的格式?如果是这样,您可以使用:
df['new_col'] = df.A.str[:7].
标签: python pandas string slice
我需要对特定列中的字符串进行切片,并在其中创建一个包含切片的新列。 即现有的 col A: 'CODE.45.6787' 用于创建 col B: 'CODE.45' 谢谢!
【问题讨论】:
df['new_col'] = df.A.str[:7].
标签: python pandas string slice
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('.')
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
【讨论】: