corr.writable.CIComputationWritable.java Source code

Java tutorial

Introduction

Here is the source code for corr.writable.CIComputationWritable.java

Source

/**
 * Copyright 2012 Jee Vang 
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License. 
 * You may obtain a copy of the License at 
 * 
 *  http://www.apache.org/licenses/LICENSE-2.0 
 *  
 *  Unless required by applicable law or agreed to in writing, software 
 *  distributed under the License is distributed on an "AS IS" BASIS, 
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
 *  See the License for the specific language governing permissions and 
 *  limitations under the License. 
 */
package corr.writable;

import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;

import org.apache.hadoop.io.Writable;

/**
 * Holds intermediary results of Pearson correlation.
 * @author Jee Vang
 *
 */
public class CIComputationWritable implements Writable {

    private double x;
    private String y;
    private double n;

    /**
     * Constructor.
     */
    public CIComputationWritable() {
        this(0.0d, " ", 0.0d);
    }

    /**
     * Constructor.
     * @param x Sum of x.
     * @param y Sum of y.
     * @param n Total data points.
     */
    public CIComputationWritable(double x, String y, double n) {
        this.x = x;
        this.y = y;
        this.n = n;
    }

    @Override
    public void readFields(DataInput in) throws IOException {
        y = in.readLine();
    }

    @Override
    public void write(DataOutput out) throws IOException {
        out.writeBytes(getCorrelation().toString());
    }

    @Override
    public String toString() {
        return (new StringBuilder()).append(getCorrelation()).toString();
    }

    /**
     * Gets the computed Pearson correlation.
     * @return Pearson correlation.
     */
    public String getCorrelation() {
        return y;
    }

}