读入后按列分组统计
【问题】
3 10 11 21 30 34 36 40 41 53 58 64 68 76 85 87 91 94 101 104 116 123
3 10 20 21 23 34 36 39 41 53 56 64 68 76 85 87 91 94 101 105 115 119
1 10 19 21 24 34 36 39 42 53 56 64 68 76 85 87 91 94 101 105 115 121
3 9 19 21 30 34 36 40 42 53 58 64 68 76 85 87 91 94 101 104 116 123
3 10 14 22 29 34 37 39 41 54 58 64 68 76 85 87 91 94 97 105 113 119
3 9 20 21 23 34 36 39 42 53 56 64 68 76 85 87 91 94 101 104 115 119
1 10 19 21 23 34 36 39 45 53 56 64 68 76 85 87 91 94 101 104 115 121
上面是要处理的 txt 文件
谁能告诉我怎么编写个程序实现查找统计
就是按列来分析
比方第一列, 3 的个数是 5 , 1 的个数是 2 ,然后再第二列 10 的个数是 5……
然后输出每个数及其个数?
谢谢
【回答】
用JAVA进行批量数据计算比较复杂,用SPL简单很多:
A |
|
1 |
=file("E:\\s.txt").import(;," ") |
2 |
=A1.fno().(A1.field(~).groups(~:no;count(~):count)) |
3 |
=A2.news(~;A2.#:列,no:数字,count:个数) |
A1:读取s.txt文件内容。
A2:对每一列进行处理,分别生成一个由no和count组成的二维表,表数据内容为该列出现的数字和该数字出现的次数。
A3:由A2生成一个字段名为列、数字和个数的二维表,结果如下:
SPL脚本还可以嵌入JAVA程序中使用(参考Java 如何调用 SPL 脚本)。