[mlpack] 127/207: Improved Load to load column vectors

Barak A. Pearlmutter barak+git at pearlmutter.net
Thu Mar 23 17:53:47 UTC 2017


This is an automated email from the git hooks/post-receive script.

bap pushed a commit to branch master
in repository mlpack.

commit c62f254c9569465a099ca3984a7d5c73b9b81ab4
Author: Lakshya Agrawal <zeeshan.lakshya at gmail.com>
Date:   Sat Jan 7 14:17:29 2017 +0530

    Improved Load to load column vectors
---
 src/mlpack/core/data/load.hpp      |  6 ++++++
 src/mlpack/core/data/load_impl.hpp | 24 ++++++++++++++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/src/mlpack/core/data/load.hpp b/src/mlpack/core/data/load.hpp
index 7302957..193d43c 100644
--- a/src/mlpack/core/data/load.hpp
+++ b/src/mlpack/core/data/load.hpp
@@ -96,6 +96,12 @@ bool Load(const std::string& filename,
  * @param transpose If true, transpose the matrix after loading.
  * @return Boolean value indicating success or failure of load.
  */
+
+template<typename eT>
+bool Load(const std::string& filename,
+          arma::Col<eT>& vec,
+          const bool fatal = false);
+
 template<typename eT, typename PolicyType>
 bool Load(const std::string& filename,
           arma::Mat<eT>& matrix,
diff --git a/src/mlpack/core/data/load_impl.hpp b/src/mlpack/core/data/load_impl.hpp
index 9bde286..ce12008 100644
--- a/src/mlpack/core/data/load_impl.hpp
+++ b/src/mlpack/core/data/load_impl.hpp
@@ -91,6 +91,30 @@ bool inline inplace_transpose(arma::Mat<eT>& X)
 
 template<typename eT>
 bool Load(const std::string& filename,
+          arma::Col<eT>& vec,
+          const bool fatal)
+{
+  arma::mat matrix(vec);
+  Load(filename, matrix, fatal, false);
+  //Check if the returned matrix is vector if yes then 
+  //copy this to our vec else return error
+  if( matrix.is_vec() )
+    vec = matrix;
+  else
+    if( fatal)
+      Log::Fatal << "Loading '" << filename << "'failed "<<
+          ", the data you are tying to load is not a column vector "<< 
+          std::endl; 
+    else
+      Log::Warn << "Loading '" << filename << "'failed " <<
+          ", the data you are trying to load is not a column vector " <<
+          std::endl;
+    return false;
+  return true;
+}
+
+template<typename eT>
+bool Load(const std::string& filename,
           arma::Mat<eT>& matrix,
           const bool fatal,
           const bool transpose)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/mlpack.git



More information about the debian-science-commits mailing list