python - 我正在处理一个大型数据集。数据中的每个值都需要清理。我如何在熊猫中使用过滤器或查询功能来做到这一点
问题描述
我的数据集如下所示:
BKG_PRODTN_DT | POL_EXP_INFO | BKD_MAJ_LINE_CD | POL_SYM_CD | AMT | bkd_amt |
---|---|---|---|---|---|
20210319,20210319 | 100,100 | A001,A001 | NVA,NVA | 14.26,14.26 | 10,13.97 |
20210319,20210319 | 101,101 | A111,A112 | NVA,NVA | 63,64.17 | 62.89,62.89 |
我期待一个像下面这样的数据框。
BKG_PRODTN_DT | POL_EXP_INFO | BKD_MAJ_LINE_CD | POL_SYM_CD | AMT | bkd_amt |
---|---|---|---|---|---|
20210319 | 100 | A001 | NVA | 14.26 | 10,13.97 |
20210319 | 101 | A111,A112 | NVA | 63,64.17 | 62.89 |
数据框中的每个值都需要进行转换。数据帧的每个单元格中有两个值,由分隔符(,)分隔。我想检查一个单元格中的两个值是否相等。如果它们相同/相等,我想删除第二个值,否则(如果由分隔符分隔的每个单元格中的值不同),我想将单元格中的实际值保留原样。我可以使用 pandas 中的查询功能来做到这一点吗?
解决方案
尝试:
print(df.replace(r"^(.*),\1$", r"\1", regex=True))
印刷:
BKG_PRODTN_DT POL_EXP_INFO BKD_MAJ_LINE_CD POL_SYM_CD AMT bkd_amt
0 20210319 100 A001 NVA 14.26 10,13.97
1 20210319 101 A111,A112 NVA 63,64.17 62.89
推荐阅读
- vba - 我可以使用 VBA 进行条件循环以在有条件格式的表格上查找交通灯图标吗
- vim - 使用“/”和“[”在 GVIM 单词中搜索
- c++ - 在函数中将 ifstream 作为参数传递
- django - 从 html 按钮调用 django 函数
- node.js - Google 表格 POST 请求 - 有效负载过大错误
- android - 如何在 Kotlin 中设置使用 AsyncTask 运行我的代码
- java - Kotlin:可以在包外访问内部类
- javascript - 为什么我的 jQuery 在页面加载时不起作用?
- java - 在 Spring Boot 中禁止某些链接除了 GET 之外的任何内容
- apache-spark - 使用 Pyspark 进行交叉验证