pandas - 将所有非空转换为小写
问题描述
抱歉,我是熊猫新手。我正在尝试将数据框中的所有值转换为小写,除非它们为空。我尝试以下方法:
Df = df.apply (lambda x: x if pd.isna (x) else x.astype (str).str.lower()
但得到一个错误
\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\core\generic.py", line 1573, in __nonzero__
.format (self.__class__.__name__))
ValueError: ('The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().', 'occurred at index oss')
解决方案
你可以fillna
用一些唯一的字符串然后
df.fillna('thisnanwillreplaceback').apply(lambda x :x.str.lower()).replace('thisnanwillreplaceback',np.nan)
Out[275]:
A C
0 aad aad
1 aac aac
2 NaN aad
简单数据
df=pd.DataFrame({'A':['AAD','AAC',np.nan],'C':['AAD','AAC','AAD']})
推荐阅读
- reactjs - 对幻灯片中的不同组件应用不同的效果。刷卡器 | 离子
- python - 删除列表中的重复项
- swift - 快速协助 if 语句
- c# - CancellationToken.Register 的替代方法用于异步方法/在 BackgroundService 关闭时
- reactjs - 如何使用原生 SQL 生成元数据 // 如何在没有列名的情况下检索生成的数据?
- node.js - 将大量数据切割成从端点(API)返回的块,以减少来自反应客户端的 axios 延迟
- containers - 对部署在 EKS 上的 Fargate 容器的根访问权限以进行故障排除
- php - 类的 PHP 对象无法转换为字符串
- c++ - 如何使用 CMake 构建和使用外部库
- python - MongoDB 更新:我无法使用烧瓶 API 更新 MongoDB 中的文档