You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by ap...@apache.org on 2015/04/22 05:12:57 UTC
mahout git commit: MAHOUT-1693: Override .toString() in
AbstractMatrix using VectorView closes apache/mahout#121
Repository: mahout
Updated Branches:
refs/heads/master 8be44ab3b -> 6a3f93e6f
MAHOUT-1693: Override .toString() in AbstractMatrix using VectorView closes apache/mahout#121
Project: http://git-wip-us.apache.org/repos/asf/mahout/repo
Commit: http://git-wip-us.apache.org/repos/asf/mahout/commit/6a3f93e6
Tree: http://git-wip-us.apache.org/repos/asf/mahout/tree/6a3f93e6
Diff: http://git-wip-us.apache.org/repos/asf/mahout/diff/6a3f93e6
Branch: refs/heads/master
Commit: 6a3f93e6f695d12f63ef48c5e33f0d24658bd596
Parents: 8be44ab
Author: Andrew Palumbo <ap...@apache.org>
Authored: Tue Apr 21 23:11:50 2015 -0400
Committer: Andrew Palumbo <ap...@apache.org>
Committed: Tue Apr 21 23:11:50 2015 -0400
----------------------------------------------------------------------
.../org/apache/mahout/math/AbstractMatrix.java | 29 +++++++++++++++---
.../mahout/math/FunctionalMatrixView.java | 4 ---
.../apache/mahout/math/SparseColumnMatrix.java | 31 ++++++++++++++++++--
3 files changed, 53 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mahout/blob/6a3f93e6/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java b/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
index 0dd084e..bb363b8 100644
--- a/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
+++ b/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
@@ -782,13 +782,34 @@ public abstract class AbstractMatrix implements Matrix {
@Override
public String toString() {
+ int row = 0;
+ int maxRowsToDisplay = 10;
+ int maxColsToDisplay = 20;
+ int colsToDisplay = maxColsToDisplay;
+
+ if(maxColsToDisplay > columnSize()){
+ colsToDisplay = columnSize();
+ }
+
+
StringBuilder s = new StringBuilder("{\n");
Iterator<MatrixSlice> it = iterator();
- while (it.hasNext()) {
+ while ((it.hasNext()) && (row < maxRowsToDisplay)) {
MatrixSlice next = it.next();
- s.append(" ").append(next.index()).append(" =>\t").append(next.vector()).append('\n');
+ s.append(" ").append(next.index())
+ .append(" =>\t")
+ .append(new VectorView(next.vector(), 0, colsToDisplay))
+ .append('\n');
+ row ++;
+ }
+ String returnString = s.toString();
+ if (maxColsToDisplay <= columnSize()) {
+ returnString = returnString.replace("}", " ... } ");
+ }
+ if(maxRowsToDisplay <= rowSize())
+ return returnString + ("... }");
+ else{
+ return returnString + ("}");
}
- s.append("}");
- return s.toString();
}
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/6a3f93e6/math/src/main/java/org/apache/mahout/math/FunctionalMatrixView.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/FunctionalMatrixView.java b/math/src/main/java/org/apache/mahout/math/FunctionalMatrixView.java
index e955a5e..2a13611 100644
--- a/math/src/main/java/org/apache/mahout/math/FunctionalMatrixView.java
+++ b/math/src/main/java/org/apache/mahout/math/FunctionalMatrixView.java
@@ -87,8 +87,4 @@ class FunctionalMatrixView extends AbstractMatrix {
return new MatrixVectorView(this, 0, column, 1, 0, denseLike);
}
- @Override
- public String toString(){
- return "org.apache.mahout.math.FunctionalMatrixView";
- }
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/6a3f93e6/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java b/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
index b852026..d847dea 100644
--- a/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
+++ b/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
@@ -172,12 +172,37 @@ public class SparseColumnMatrix extends AbstractMatrix {
@Override
public String toString() {
+ int row = 0;
+ int maxRowsToDisplay = 10;
+ int maxColsToDisplay = 20;
+ int colsToDisplay = maxColsToDisplay;
+
+ if(maxColsToDisplay > columnSize()){
+ colsToDisplay = columnSize();
+ }
+
StringBuilder s = new StringBuilder("{\n");
for (MatrixSlice next : this.transpose()) {
- s.append(" ").append(next.index()).append(" =>\t").append(next.vector()).append('\n');
+ if (row < maxRowsToDisplay) {
+ s.append(" ")
+ .append(next.index())
+ .append(" =>\t")
+ .append(new VectorView(next.vector(), 0, colsToDisplay))
+ .append('\n');
+ row++;
+ }
+ }
+
+ String returnString = s.toString();
+ if (maxColsToDisplay <= columnSize()) {
+ returnString = returnString.replace("}", " ... }");
+ }
+
+ if (maxRowsToDisplay <= rowSize()) {
+ return returnString + "... }";
+ } else {
+ return returnString + "}";
}
- s.append("}");
- return s.toString();
}
}