Guest User

Untitled

a guest
Jul 21st, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1. import org.apache.commons.math3.linear.BlockRealMatrix;
  2. import java.util.ArrayList;
  3. import java.util.Arrays;
  4. import java.util.List;
  5.  
  6. public class StreamAdder {
  7.  
  8. public static void main(String[] args) {
  9.  
  10. List<BlockRealMatrix> matrixHolder = new ArrayList<>();
  11.  
  12. matrixHolder.add(new BlockRealMatrix(2, 3));
  13. matrixHolder.add(new BlockRealMatrix(2, 3));
  14.  
  15. matrixHolder.get(0).setRow(0, new double[]{1, 2, 3});
  16. matrixHolder.get(0).setRow(1, new double[]{4, 5, 6});
  17. matrixHolder.get(1).setRow(0, new double[]{7, 8, 9});
  18. matrixHolder.get(1).setRow(1, new double[]{10, 11, 12});
  19.  
  20. matrixHolder.stream().forEach(i -> System.out.println(i));
  21.  
  22. BlockRealMatrix averages = new BlockRealMatrix(matrixHolder.get(0).getRowDimension(), 1);
  23.  
  24. for (int i = 0; i < averages.getRowDimension(); i++) {
  25. double average = 0;
  26. for (int j = 0; j < matrixHolder.size(); j++) {
  27. average += Arrays.stream(matrixHolder.get(j).getRow(i)).sum();
  28. }
  29. average /= (matrixHolder.size() * matrixHolder.get(0).getColumnDimension());
  30. averages.setEntry(i, 0, average);
  31. average = 0;
  32. }
  33.  
  34. System.out.println("Averages n" + averages);
  35.  
  36. }
  37. }
  38.  
  39. BlockRealMatrix{{1.0,2.0,3.0},{4.0,5.0,6.0}}
  40. BlockRealMatrix{{7.0,8.0,9.0},{10.0,11.0,12.0}}
  41. Averages
  42. BlockRealMatrix{{5.0},{8.0}}
Add Comment
Please, Sign In to add comment