清洗 csv 中的重复行和空行
有个 csv 文件,部分格有空白、NaN,有些行有重复。
Sno,Country,noofDeaths 1,,32432 2,Pakistan,NaN 3,USA,3332 4,RUSSIA, 5,JAPAN,567 3,USA,3332 |
请用 Java 删掉有空白和 NaN 格的行,去除重复行。
Sno,Country,noofDeaths 3,USA,3332 5,JAPAN,567 |
编写SPL脚本:
A | |
1 | =T("data.csv") |
2 | =A1.select(~.array() ^ [null,NaN]==[]) |
3 | =A2.group@1u(~.array()) |
A1:将csv解析为二维表
A2:将记录转为序列,与[null,NaN]做交集,过滤出无交集的记录。
A3:对剩下的记录分组,取每组第1条,并保持原序。
Java 集成 SPL 可参考 Java 如何调用 SPL 脚本
问题来源:https://stackoverflow.com/questions/70806307/how-to-remove-row-which-contains-blank-cell-from-csv-file-in-java
英文版 https://c.scudata.com/article/1722497828207