@Override public void scaleEquals( final double scaleFactor ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() * scaleFactor ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void scaleEquals( final double scaleFactor ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() * scaleFactor ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void scaleEquals( final double scaleFactor ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() * scaleFactor ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void dotTimesEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() * Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void plusEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() + Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void minusEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() - Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void dotTimesEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() * Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void plusEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() + Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void minusEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() - Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void dotTimesEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() * Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void minusEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() - Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public void plusEquals( final RandomVariable<Number> other ) { ArrayList<Number> X = this.sample( this.getRandom(), this.getNumSamples() ); ArrayList<? extends Number> Y = other.sample( this.getRandom(), this.getNumSamples() ); ArrayList<Number> Z = new ArrayList<Number>( this.getNumSamples() ); for( int n = 0; n < this.getNumSamples(); n++ ) { Z.add( X.get(n).doubleValue() + Y.get(n).doubleValue() ); } this.setDistribution( new ScalarDataDistribution.PMF( Z ) ); }
@Override public boolean equals( final RandomVariable<Number> other, final double effectiveZero ) { // effectiveZero=0.0 -> null hypothesis probability = 1.0 // effectiveZero=1.0 -> null hypothesis probability >= 0.0 // effectiveZero=0.95 -> null hypothesis probability >= 0.05 double pValue = 1.0-effectiveZero; ArrayList<Number> data1 = this.sample( this.random, this.numSamples ); ArrayList<? extends Number> data2 = other.sample( this.random, this.numSamples ); KolmogorovSmirnovConfidence kstest = new KolmogorovSmirnovConfidence(); KolmogorovSmirnovConfidence.Statistic stat = kstest.evaluateNullHypothesis( data1, data2 ); return stat.getNullHypothesisProbability() >= pValue; }
@Override public boolean equals( final RandomVariable<Number> other, final double effectiveZero ) { // effectiveZero=0.0 -> null hypothesis probability = 1.0 // effectiveZero=1.0 -> null hypothesis probability >= 0.0 // effectiveZero=0.95 -> null hypothesis probability >= 0.05 double pValue = 1.0-effectiveZero; ArrayList<Number> data1 = this.sample( this.random, this.numSamples ); ArrayList<? extends Number> data2 = other.sample( this.random, this.numSamples ); KolmogorovSmirnovConfidence kstest = new KolmogorovSmirnovConfidence(); KolmogorovSmirnovConfidence.Statistic stat = kstest.evaluateNullHypothesis( data1, data2 ); return stat.getNullHypothesisProbability() >= pValue; }
@Override public boolean equals( final RandomVariable<Number> other, final double effectiveZero ) { // effectiveZero=0.0 -> null hypothesis probability = 1.0 // effectiveZero=1.0 -> null hypothesis probability >= 0.0 // effectiveZero=0.95 -> null hypothesis probability >= 0.05 double pValue = 1.0-effectiveZero; ArrayList<Number> data1 = this.sample( this.random, this.numSamples ); ArrayList<? extends Number> data2 = other.sample( this.random, this.numSamples ); KolmogorovSmirnovConfidence kstest = new KolmogorovSmirnovConfidence(); KolmogorovSmirnovConfidence.Statistic stat = kstest.evaluateNullHypothesis( data1, data2 ); return stat.getNullHypothesisProbability() >= pValue; }