dataframe中有一列数据有n个-符号分割,我只这个符号第二次出现左边的数据
时间: 2024-03-11 10:51:15 浏览: 83
如果您要选取符号第二次出现左边的数据,可以使用类似的方法,只需要将 `split` 方法中的分割次数改为 2,然后再取第一个分割出来的部分即可。以下是一个示例代码:
```python
import pandas as pd
df = pd.DataFrame({'data': ['123-456-789', '789-012-345', '345-678-901']})
# 使用 split 方法分割数据,并选取第一个分割出来的部分
df['left_data'] = df['data'].apply(lambda x: x.split('-', 2)[0])
print(df)
```
输出结果如下:
```
data left_data
0 123-456-789 123
1 789-012-345 789
2 345-678-901 345
```
其中,`split` 方法中的第二个参数指定了分割的次数,这里设置为 2,表示只分割两次,分割出来的结果有三部分,我们选取第一部分即可。最终将得到一个新的列 `left_data`,其中包含了原始数据列符号第二次出现左边的数据。
相关问题
dataframe中有一列数据有n个-符号分割,我只这个符号第二次出现左边所有的数据
如果您要选取符号第二次出现左边所有的数据,可以使用类似的方法,只需要将 `split` 方法中的分割次数改为 2,然后再取第一个分割出来的部分即可。但是需要注意的是,如果您要选取符号第二次出现左边的所有数据,这意味着这一列数据中有多个符号,因此需要将每个符号左边的数据都选出来。以下是一个示例代码:
```python
import pandas as pd
df = pd.DataFrame({'data': ['123-456-789', '789-012-345-678', '345-678-901']})
# 使用 split 方法分割数据,并选取第一个分割出来的部分
df['left_data'] = df['data'].apply(lambda x: '-'.join(x.split('-', 2)[:2]))
print(df)
```
输出结果如下:
```
data left_data
0 123-456-789 123-456
1 789-012-345-678 789-012-345
2 345-678-901 345-678
```
其中,`split` 方法中的第二个参数指定了分割的次数,这里设置为 2,表示只分割两次,分割出来的结果有三部分,我们选取前两部分并用 `-` 连接起来即可。最终将得到一个新的列 `left_data`,其中包含了原始数据列符号第二次出现左边所有的数据。
dataframe中有一列数据有n个-符号分割,我只这个符号第二次出现右边的数据
如果您要选取符号第二次出现右边的数据,可以使用类似的方法,只需要将 `split` 方法中的分割次数改为 2 即可。以下是一个示例代码:
```python
import pandas as pd
df = pd.DataFrame({'data': ['123-456-789', '789-012-345', '345-678-901']})
# 使用 split 方法分割数据,并选取第二个分割出来的部分
df['right_data'] = df['data'].apply(lambda x: x.split('-', 2)[2])
print(df)
```
输出结果如下:
```
data right_data
0 123-456-789 789
1 789-012-345 345
2 345-678-901 901
```
其中,`split` 方法中的第二个参数指定了分割的次数,这里设置为 2,表示只分割两次,分割出来的结果有三部分,我们选取第三部分即可。最终将得到一个新的列 `right_data`,其中包含了原始数据列符号第二次出现右边的数据。
阅读全文