Skip to content

使用transform aggregate的 sum 累加时候,小数点存在精度丢失问题 #94

@qiuyeduxin

Description

@qiuyeduxin

`
const dv = new DataSet().createView().source([
{
item: '2019',
columnValue: 1.01,
type: 'a'
},
{
item: '2019',
columnValue: 2.01,
type: 'a'
},
{
item: '2020',
columnValue: 1.01,
type: 'a'
},
{
item: '2020',
columnValue: 2.22,
type: 'a'
},
])
dv.transform({
type: 'aggregate', // 别名summary
fields: ['columnValue'], // 统计字段集
operations: ['sum'], // 统计操作集
as: ['value'], // 存储字段集
groupBy: ['item', 'type'], // 分组字段集
})

console.log('dv', dv.rows)
`

输出结果

image

原因

sum 使用的第三方库 simple-statistics 里面并没有处理浮点计算精度丢失问题
image
image

希望能修复这个问题,感谢

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions