如何修改dataframe中atomicMass列只保存括号外的数字,如某一行12.0171(8)只保存12.0171
时间: 2024-05-13 22:14:25 浏览: 44
python pandas.DataFrame.loc函数使用详解
可以使用正则表达式来匹配括号外的数字,并将结果保存到新的列中。具体步骤如下:
1. 导入正则表达式库re。
```python
import re
```
2. 用正则表达式匹配atomicMass列中的数字,并将结果保存到新的列中。
```python
df['atomicMass_new'] = df['atomicMass'].apply(lambda x: re.findall(r'\d+\.\d+', x)[0])
```
这里使用了apply函数对每一行数据进行操作,lambda表达式中使用re.findall函数匹配括号外的数字,并取第一个结果。
3. 删除原有的atomicMass列,将新的atomicMass_new列重命名为atomicMass。
```python
df = df.drop('atomicMass', axis=1)
df = df.rename(columns={'atomicMass_new': 'atomicMass'})
```
这里使用了drop函数删除原有的列,并使用rename函数将新的列重命名为原有的列名。
阅读全文