Apache flink 在ApacheFlink中将值追加到数据集

Apache flink 在ApacheFlink中将值追加到数据集,apache-flink,Apache Flink,我目前正在写一个(简单的)分析代码来计算连接电源的时间读数。由于数据是假定的原始数据(例如,测量装置的干扰尚未计算出来),我必须通过计算前1000个样本的平均值来解释干扰。平均值的计算本身不是问题。我只是不确定如何生成适当的数据集。 现在看起来是这样的: DataSet<Tupel2<long,double>>Gyrotron_1=ECRH.includeFields('11000000000'); // obviously the line to declare the

我目前正在写一个(简单的)分析代码来计算连接电源的时间读数。由于数据是假定的原始数据(例如,测量装置的干扰尚未计算出来),我必须通过计算前1000个样本的平均值来解释干扰。平均值的计算本身不是问题。我只是不确定如何生成适当的数据集。
现在看起来是这样的:

DataSet<Tupel2<long,double>>Gyrotron_1=ECRH.includeFields('11000000000'); // obviously the line to declare the first gyrotron, continues for the next ten lines, assuming separattion of not occupied space
        DataSet<Tupel2<long,double>>Gyrotron_2=ECRH.includeFields('10100000000');
        DataSet<Tupel2<long,double>>Gyrotron_3=ECRH.includeFields('10010000000');
        DataSet<Tupel2<long,double>>Gyrotron_4=ECRH.includeFields('10001000000');
        DataSet<Tupel2<long,double>>Gyrotron_5=ECRH.includeFields('10000100000');
        DataSet<Tupel2<long,double>>Gyrotron_6=ECRH.includeFields('10000010000');
        DataSet<Tupel2<long,double>>Gyrotron_7=ECRH.includeFields('10000001000');
        DataSet<Tupel2<long,double>>Gyrotron_8=ECRH.includeFields('10000000100');
        DataSet<Tupel2<long,double>>Gyrotron_9=ECRH.includeFields('10000000010');
        DataSet<Tupel2<long,double>>Gyrotron_10=ECRH.includeFields('10000000001');
        for (int=1,i<=10;i++) {
            DataSet<double> offset=Gyroton_'+i+'.groupBy(1).first(1000).sum()/1000;
        }
DataSetGyrotron_1=ECRH.includefelds('11000000000');//显然,宣布第一个回旋管的这条线将延续到接下来的十条线,假设没有被占用的空间被分离
数据集回旋管2=ECRH.includeFields('10100000000');
数据集回旋管3=ECRH.includeFields('10010000000');
数据集回旋管4=ECRH.includeFields('1000000');
数据集回旋管5=ECRH.includeFields('1000010000');
数据集回旋管_6=ECRH.includeFields('100001000000');
数据集回旋管7=ECRH.includeFields('10000001000');
数据集回旋管_8=ECRH.includeFields('1000000100');
数据集回旋管9=ECRH.includeFields('1000000010');
数据集回旋管_10=ECRH.INCLUDEFEELDS('1000000001');

对于(int=1,我这段代码由于很多原因都不起作用。我建议您深入了解Java的基础知识和基本数据结构,以及

很难理解你到底想要达到什么,但这是我想到的最接近的

    String[] codes = { "11000000000", ..., "10000000001" };
    DataSet<Tuple2<Long, Double>> result = env.fromElements();
    for (final String code : codes) {
        DataSet<Tuple2<Long, Double>> codeResult = ECRH.includeFields(code)
            .groupBy(1)
            .first(1000)
            .sum(0)
            .map(sum -> new Tuple2<>(sum.f0, sum.f1 / 1000d));
        result = codeResult.union(result);
    }
    result.print();
String[]code={“11000000000”,…,“100000000001”};
数据集结果=env.fromElements();
用于(最终字符串代码:代码){
数据集codeResult=ECRH.includeFields(代码)
.groupBy(1)
.第一(1000)
.sum(0)
.map(sum->new Tuple2(sum.f0,sum.f1/1000d));
结果=codeResult.union(结果);
}
result.print();

但是,在深入研究之前,请花点时间了解基本知识。我还建议使用IntelliJ这样的IDE,它将指出代码中至少6个问题。

您介意在map函数中向我解释代码吗?我对lambda表达式不感兴趣。