那怎么通过python对dataframe一列数据进行逗号是否存在判别,并把存在逗号的值转成double类型
时间: 2024-03-22 19:40:29 浏览: 110
你可以使用pandas的DataFrame对象的apply()方法,传入一个lambda函数,对每个单元格进行处理。在lambda函数中,可以使用Python的字符串方法find()函数,判断字符串中是否包含逗号。如果包含逗号,则使用Python的float()函数将字符串转换为浮点数,否则不进行处理。下面是一个示例代码:
```python
import pandas as pd
# 创建一个DataFrame对象
df = pd.DataFrame({'A': ['1,000', '2,000', '3000', '4000']})
# 定义一个lambda函数,判断字符串中是否包含逗号
def process_cell(cell):
if cell.find(',') != -1:
return float(cell.replace(',', ''))
else:
return cell
# 对A列中的数据进行处理
df['A'] = df['A'].apply(lambda x: process_cell(x))
print(df)
```
在上面的示例中,我们首先创建了一个DataFrame对象,然后定义了一个lambda函数process_cell(),对每个单元格进行处理。在lambda函数中,使用find()方法判断字符串中是否包含逗号,如果包含,则使用replace()方法将逗号替换为空格,并使用float()函数将字符串转换为浮点数,否则直接返回原字符串。最后,使用apply()方法将lambda函数应用到A列中的每个单元格上,得到处理后的DataFrame对象。
阅读全文