如何计算iReport中变量的中位数?

马特

我正在iReport中准备报告,我需要计算将在交叉表中使用的变量的字段中位数。我注意到没有内置的中值计算类型(仅最高和最低)。

默认计算的图像

有什么方法可以在iReport中获取字段的中位数或第50个百分位数?

达达67

JasperReports中没有内置的中值计算。

仍然可以通过手动收集列表中的值,然后使用Apache Commons Math进行计算来获得中值

请参见以下示例。该报告还使用Apache Commons Lang将包装器数组转换为原始数组。要运行报告,您需要将commons-math3-xyzjar和commons-lang3-xyjar添加到类路径。

<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="FirstJasper" columnCount="1" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="30" bottomMargin="30">
    <style name="Sans_Normal" isDefault="true" fontName="DejaVu Sans" fontSize="8"/>
    <queryString>SELECT * FROM Orders</queryString>
    <field name="Freight" class="java.lang.Double"/>
    <variable name="FreightList" class="java.util.List">
        <variableExpression>$V{FreightList}</variableExpression>
        <initialValueExpression>new java.util.ArrayList()</initialValueExpression>
    </variable>
    <variable name="AddFreight" class="java.lang.Boolean">
        <variableExpression>$V{FreightList}.add($F{Freight})</variableExpression>
    </variable>
    <title>
        <band height="50">
            <textField evaluationTime="Report">
                <reportElement x="5" y="5" width="350" height="40"/>
                <textFieldExpression><![CDATA["median is " + org.apache.commons.math3.stat.StatUtils.percentile(org.apache.commons.lang3.ArrayUtils.toPrimitive((Double[]) $V{FreightList}.toArray(new Double[$V{FreightList}.size()])), 50)]]></textFieldExpression>
            </textField>
        </band>
    </title>
    <detail>
        <band height="13">
            <textField pattern="0.00">
                <reportElement x="5" y="0" width="350" height="11"/>
                <textFieldExpression><![CDATA[$F{Freight}]]></textFieldExpression>
            </textField>
        </band>
    </detail>
</jasperReport>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何计算AWS Redshift中的中位数?

来自分类Dev

如何计算Postgres中的中位数?

来自分类Dev

如何在Hive中计算中位数

来自分类Dev

如何计算分组数据集的中位数?

来自分类Dev

如何计算DataFrameGroupBy对象的中位数?

来自分类Dev

如何计算中位数而忽略负值?

来自分类Dev

如何在PrestoSQL中计算中位数?

来自分类Dev

如何计算伽马分布的中位数?

来自分类Dev

通过在R中创建分类变量按组计算中位数

来自分类Dev

MySQLi,声明变量并使用数学计算中位数

来自分类Dev

通过计算 R 中的中位数来计算误差

来自分类Dev

如何从numpy数组中删除两个最小的数字并计算中位数python 3

来自分类Dev

如何计算字典中多个矩阵的均值/中位数/标准差?

来自分类Dev

如何从 MySQL 中的逗号分隔字符串值计算中位数?

来自分类Dev

使用数据子集时如何在data.table中创建新列并计算中位数

来自分类Dev

在熊猫数据框中,如何计算每月内每个十分位数的中位数

来自分类Dev

如何计算未排序数据集的中位数

来自分类Dev

没有NA的情况下如何计算中位数?

来自分类Dev

如何使用outer()计算每个向量之间的中位数?

来自分类Dev

如何有效地计算跑步中位数

来自分类Dev

如何从时间序列中计算特定小时的中位数

来自分类Dev

如何使用R计算成为列表中位数的概率?

来自分类Dev

如何按因子计算多列的中位数?

来自分类Dev

KDB / Q我们如何计算移动中位数

来自分类Dev

如何调用计算整数中位数的函数

来自分类Dev

如何仅考虑特定行来计算分组的中位数

来自分类Dev

从R中的data.table列计算中位数

来自分类Dev

使用不同的表计算SQL查询中的中位数

来自分类Dev

SQL计算游标中每个产品的中位数

Related 相关文章

  1. 1

    如何计算AWS Redshift中的中位数?

  2. 2

    如何计算Postgres中的中位数?

  3. 3

    如何在Hive中计算中位数

  4. 4

    如何计算分组数据集的中位数?

  5. 5

    如何计算DataFrameGroupBy对象的中位数?

  6. 6

    如何计算中位数而忽略负值?

  7. 7

    如何在PrestoSQL中计算中位数?

  8. 8

    如何计算伽马分布的中位数?

  9. 9

    通过在R中创建分类变量按组计算中位数

  10. 10

    MySQLi,声明变量并使用数学计算中位数

  11. 11

    通过计算 R 中的中位数来计算误差

  12. 12

    如何从numpy数组中删除两个最小的数字并计算中位数python 3

  13. 13

    如何计算字典中多个矩阵的均值/中位数/标准差?

  14. 14

    如何从 MySQL 中的逗号分隔字符串值计算中位数?

  15. 15

    使用数据子集时如何在data.table中创建新列并计算中位数

  16. 16

    在熊猫数据框中,如何计算每月内每个十分位数的中位数

  17. 17

    如何计算未排序数据集的中位数

  18. 18

    没有NA的情况下如何计算中位数?

  19. 19

    如何使用outer()计算每个向量之间的中位数?

  20. 20

    如何有效地计算跑步中位数

  21. 21

    如何从时间序列中计算特定小时的中位数

  22. 22

    如何使用R计算成为列表中位数的概率?

  23. 23

    如何按因子计算多列的中位数?

  24. 24

    KDB / Q我们如何计算移动中位数

  25. 25

    如何调用计算整数中位数的函数

  26. 26

    如何仅考虑特定行来计算分组的中位数

  27. 27

    从R中的data.table列计算中位数

  28. 28

    使用不同的表计算SQL查询中的中位数

  29. 29

    SQL计算游标中每个产品的中位数

热门标签

归档