我有一个xml文件,我已经读过并在我的编辑器上编入索引。我有三个状态',它们在xml文件中表示 - GOOD,AVERAGE,POOR;它们也以DD / MM / YYYY格式的日期编制索引。
我要做的是最初按月分组,因此从我已成功完成的日期开始剥离月份,然后再次循环并按月计算“好”状态。
我会假设我必须按月份和状态进行分组,然后计算“好”的出现,虽然我似乎陷入了某个地方......到目前为止我已经开发了以下内容,希望我只是需要稍微调整一下!
...data fed in from xml...
data (doall (get-records (xml/parse is)))
loopA (for [flop data]
{
:STATUS(:QUALITY_STATUS flop)
:MONTH(get (split (:DATE flop) #"/") 1)
})
x(group-by #(select-keys %[:MONTH :STATUS]) loopA)
loopB (str-join \newline (for [floop x]
{
:MONTH_STAMP (second floop)
:Q_STATUS (if (= :STATUS "GOOD") (second floop))
:GOOD_QUAL (count :Q_STATUS)
}))
理想情况下,我最终想要的是三列数据,如下所示:
月 - 质量 - 计数
01 ------- GOOD ----- 1
02 ------- GOOD ----- 5
...
12 ------- GOOD ----- 3
提前致谢! :)