@@ -271,24 +271,33 @@ private void testDataFrameScriptInput(ValueType[] schema, boolean containsID, bo
271
271
272
272
//create input data frame
273
273
DataFrame df = createDataFrame (sqlctx , mbA , containsID , schema );
274
- FrameMetadata meta = new FrameMetadata (containsID ? FrameFormat .DF_WITH_INDEX :
274
+
275
+ // Create full frame metadata, and empty frame metadata
276
+ FrameMetadata meta = new FrameMetadata (containsID ? FrameFormat .DF_WITH_INDEX :
275
277
FrameFormat .DF , mc2 .getRows (), mc2 .getCols ());
276
-
278
+ FrameMetadata metaEmpty = new FrameMetadata ();
279
+
277
280
//create mlcontext
278
281
ml = new MLContext (sc );
279
282
ml .setExplain (true );
280
283
281
- //run script and obtain result
284
+ //run scripts and obtain result
282
285
Script script1 = dml (
283
- //"Xf = read($Xffile); Xm = as.matrix(Xf); write(Xm, $Xmfile);")
284
286
"Xm = as.matrix(Xf);" )
285
287
.in ("Xf" , df , meta ).out ("Xm" );
286
- Matrix Xm = ml .execute (script1 ).getMatrix ("Xm" );
287
- MatrixBlock mbB = Xm .toBinaryBlockMatrix ().getMatrixBlock ();
288
-
288
+ Script script2 = dml (
289
+ "Xm = as.matrix(Xf);" )
290
+ .in ("Xf" , df , metaEmpty ).out ("Xm" ); // empty metadata
291
+ Matrix Xm1 = ml .execute (script1 ).getMatrix ("Xm" );
292
+ Matrix Xm2 = ml .execute (script2 ).getMatrix ("Xm" );
293
+ MatrixBlock mbB1 = Xm1 .toBinaryBlockMatrix ().getMatrixBlock ();
294
+ MatrixBlock mbB2 = Xm2 .toBinaryBlockMatrix ().getMatrixBlock ();
295
+
289
296
//compare frame blocks
290
- double [][] B = DataConverter .convertToDoubleMatrix (mbB );
291
- TestUtils .compareMatrices (A , B , rows1 , cols , eps );
297
+ double [][] B1 = DataConverter .convertToDoubleMatrix (mbB1 );
298
+ double [][] B2 = DataConverter .convertToDoubleMatrix (mbB2 );
299
+ TestUtils .compareMatrices (A , B1 , rows1 , cols , eps );
300
+ TestUtils .compareMatrices (A , B2 , rows1 , cols , eps );
292
301
}
293
302
catch ( Exception ex ) {
294
303
ex .printStackTrace ();
@@ -364,4 +373,4 @@ private DataFrame createDataFrame(SQLContext sqlctx, MatrixBlock mb, boolean con
364
373
JavaRDD <Row > rowRDD = sc .parallelize (list );
365
374
return sqlctx .createDataFrame (rowRDD , dfSchema );
366
375
}
367
- }
376
+ }
0 commit comments