dataframe 某列字段 截取第一次出现符号‘-’之后所有的字符
时间: 2023-07-15 16:16:00 浏览: 114
可以使用 Pandas 中的 `str.split()` 方法将字符串按照指定的分隔符进行切割,然后取切割结果的第二个元素之后的字符即可。示例如下:
```python
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({'col1': ['abc-def-ghi', 'jkl-mno-pqr', 'stu-vwx-yz']})
# 提取第一次出现符号‘-’之后所有的字符
df['col1'] = df['col1'].str.split('-', n=1).str[1]
print(df)
```
输出结果如下:
```
col1
0 def-ghi
1 mno-pqr
2 vwx-yz
```
相关问题
dataframe 某列字段 截取符号‘-’之后所有的字符
假设你的 DataFrame 中有一列名为 `column_name`,其中的值包含了符号 `'-'`,你可以使用 `.str.split()` 方法将其拆分成一个列表,然后使用索引 `[1]`(即第二个元素)获取符号 `'-'` 之后的所有字符。具体代码如下:
```
df['new_column'] = df['column_name'].str.split('-').str[1]
```
其中,`'new_column'` 是你想要添加的新列的名称,你可以自定义。
dataframe 某列字段 截取符号‘-’之后所df['col1'] = df['col1'].str.split('-', n=1).str[1]有的字符
如果你想要在截取符号 '-' 之后,只保留某些特定字符,可以使用正则表达式来进行匹配。例如,假设你只想保留以大写字母开头的单词,可以使用以下代码:
```
import re
df['col1'] = df['col1'].str.split('-', n=1).str[1]
df['col1'] = df['col1'].str.extract(r'\b([A-Z]\w*)\b', expand=False)
```
这里的正则表达式 `\b([A-Z]\w*)\b` 匹配一个以大写字母开头的单词,`\b` 表示单词边界,`[A-Z]` 表示大写字母,`\w*` 表示零个或多个单词字符。`expand=False` 表示返回一个 Series,而不是一个 DataFrame。
阅读全文