use of org.apache.sysml.api.mlcontext.Script in project incubator-systemml by apache.
the class MLContextTest method testRDDSumCSVPYDML.
@Test
public void testRDDSumCSVPYDML() {
System.out.println("MLContextTest - RDD<String> CSV sum PYDML");
List<String> list = new ArrayList<String>();
list.add("1,1,1");
list.add("2,2,2");
list.add("3,3,3");
JavaRDD<String> javaRDD = sc.parallelize(list);
RDD<String> rdd = JavaRDD.toRDD(javaRDD);
Script script = pydml("print('sum: ' + sum(M))").in("M", rdd);
setExpectedStdOut("sum: 18.0");
ml.execute(script);
}
use of org.apache.sysml.api.mlcontext.Script in project incubator-systemml by apache.
the class MLContextTest method testOutputDataFrameOfVectorsDML.
@Test
public void testOutputDataFrameOfVectorsDML() {
System.out.println("MLContextTest - output DataFrame of vectors DML");
String s = "m=matrix('1 2 3 4',rows=2,cols=2);";
Script script = dml(s).out("m");
MLResults results = ml.execute(script);
Dataset<Row> df = results.getDataFrame("m", true);
Dataset<Row> sortedDF = df.sort(RDDConverterUtils.DF_ID_COLUMN);
// verify column types
StructType schema = sortedDF.schema();
StructField[] fields = schema.fields();
StructField idColumn = fields[0];
StructField vectorColumn = fields[1];
Assert.assertTrue(idColumn.dataType() instanceof DoubleType);
Assert.assertTrue(vectorColumn.dataType() instanceof VectorUDT);
List<Row> list = sortedDF.collectAsList();
Row row1 = list.get(0);
Assert.assertEquals(1.0, row1.getDouble(0), 0.0);
Vector v1 = (DenseVector) row1.get(1);
double[] arr1 = v1.toArray();
Assert.assertArrayEquals(new double[] { 1.0, 2.0 }, arr1, 0.0);
Row row2 = list.get(1);
Assert.assertEquals(2.0, row2.getDouble(0), 0.0);
Vector v2 = (DenseVector) row2.get(1);
double[] arr2 = v2.toArray();
Assert.assertArrayEquals(new double[] { 3.0, 4.0 }, arr2, 0.0);
}
use of org.apache.sysml.api.mlcontext.Script in project incubator-systemml by apache.
the class MLContextTest method testAddScalarIntegerInputsDML.
@Test
public void testAddScalarIntegerInputsDML() {
System.out.println("MLContextTest - add scalar integer inputs DML");
String s = "total = in1 + in2; print('total: ' + total);";
Script script = dml(s).in("in1", 1).in("in2", 2);
setExpectedStdOut("total: 3");
ml.execute(script);
}
use of org.apache.sysml.api.mlcontext.Script in project incubator-systemml by apache.
the class MLContextTest method testDisplayBooleanDML.
@Test
public void testDisplayBooleanDML() {
System.out.println("MLContextTest - display boolean DML");
String s = "print(b);";
Script script = dml(s).in("b", true);
setExpectedStdOut("TRUE");
ml.execute(script);
}
use of org.apache.sysml.api.mlcontext.Script in project incubator-systemml by apache.
the class MLContextTest method testDataFrameSumDMLDoublesWithIDColumnSortCheck.
@Test
public void testDataFrameSumDMLDoublesWithIDColumnSortCheck() {
System.out.println("MLContextTest - DataFrame sum DML, doubles with ID column sort check");
List<String> list = new ArrayList<String>();
list.add("3,7,8,9");
list.add("1,1,2,3");
list.add("2,4,5,6");
JavaRDD<String> javaRddString = sc.parallelize(list);
JavaRDD<Row> javaRddRow = javaRddString.map(new CommaSeparatedValueStringToDoubleArrayRow());
List<StructField> fields = new ArrayList<StructField>();
fields.add(DataTypes.createStructField(RDDConverterUtils.DF_ID_COLUMN, DataTypes.DoubleType, true));
fields.add(DataTypes.createStructField("C1", DataTypes.DoubleType, true));
fields.add(DataTypes.createStructField("C2", DataTypes.DoubleType, true));
fields.add(DataTypes.createStructField("C3", DataTypes.DoubleType, true));
StructType schema = DataTypes.createStructType(fields);
Dataset<Row> dataFrame = spark.createDataFrame(javaRddRow, schema);
MatrixMetadata mm = new MatrixMetadata(MatrixFormat.DF_DOUBLES_WITH_INDEX);
Script script = dml("print('M[1,1]: ' + as.scalar(M[1,1]));").in("M", dataFrame, mm);
setExpectedStdOut("M[1,1]: 1.0");
ml.execute(script);
}
Aggregations