本文整理了Java中com.clearspring.analytics.stream.quantile.QDigest.serialize
方法的一些代码示例,展示了QDigest.serialize
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QDigest.serialize
方法的具体详情如下:
包路径:com.clearspring.analytics.stream.quantile.QDigest
类名称:QDigest
方法名:serialize
暂无
代码示例来源:origin: addthis/stream-lib
private void compare(AbstractContinousDistribution gen, String tag, long scale, Random rand) {
for (double compression : new double[]{2, 5, 10, 20, 50, 100, 200, 500, 1000, 2000}) {
QDigest qd = new QDigest(compression);
TDigest dist = new TDigest(compression, rand);
List<Double> data = Lists.newArrayList();
for (int i = 0; i < 100000; i++) {
double x = gen.nextDouble();
dist.add(x);
qd.offer((long) (x * scale));
data.add(x);
}
dist.compress();
Collections.sort(data);
for (double q : new double[]{0.001, 0.01, 0.1, 0.2, 0.3, 0.5, 0.7, 0.8, 0.9, 0.99, 0.999}) {
double x1 = dist.quantile(q);
double x2 = (double) qd.getQuantile(q) / scale;
double e1 = cdf(x1, data) - q;
System.out.printf("%s\t%.0f\t%.8f\t%.10g\t%.10g\t%d\t%d\n", tag, compression, q, e1, cdf(x2, data) - q, dist.smallByteSize(), QDigest.serialize(qd).length);
}
}
}
代码示例来源:origin: addthis/stream-lib
/**
* Test for bug identified and corrected by http://github.com/addthis/stream-lib/pull/53
*/
@Test
public void testSerialization() {
long[] samples = {0, 20};
QDigest digestA = new QDigest(2);
for (int i = 0; i < samples.length; i++) {
digestA.offer(samples[i]);
}
byte[] serialized = QDigest.serialize(digestA);
QDigest deserializedA = QDigest.deserialize(serialized);
QDigest digestB = new QDigest(2);
for (int i = 0; i < samples.length; i++) {
digestB.offer(samples[i]);
}
QDigest.unionOf(digestA, deserializedA);
}
}
代码示例来源:origin: LiveRamp/cascading_ext
private Tuple serializeQDigest(QDigest qDigest) {
return new Tuple(new BytesWritable(QDigest.serialize(qDigest)));
}
}
内容来源于网络,如有侵权,请联系作者删除!