-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMinMapper.java
32 lines (24 loc) · 1.36 KB
/
MinMapper.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package oldapi;
import java.io.IOException;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.DoubleWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapred.MapReduceBase;
import org.apache.hadoop.mapred.Mapper;
import org.apache.hadoop.mapred.OutputCollector;
import org.apache.hadoop.mapred.Reporter;
public class MinMapper extends MapReduceBase implements Mapper<LongWritable, Text, Text, DoubleWritable> {
private static final int MISSING = 9999;
// Numero de la Columna del Dataset de donde vamos a buscar el valor mínimo
public static int col=5;
public void map(LongWritable key, Text value, OutputCollector<Text, DoubleWritable> output, Reporter reporter) throws IOException {
// Como el fichero de datos cada columna está separada por el caracter , (coma)
// Usamos el caracter , (coma) para dividir cada línea del fichero en el map en las columnas
String line = value.toString();
String[] parts = line.split(",");
// Hacemos el collect de la key=1 y el valor de la columna (el valor corresponde con el número de columna
// indicado anteriormente)
output.collect(new Text("1"), new DoubleWritable(Double.parseDouble(parts[col])));
}
}