Home | Develop | Download | Contact
Métodos privados | Atributos privados
Referencia de la Clase Pds::Vector

La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna. Para usar incluir Pds/Vector. Más...

#include <Vector.hpp>

Diagrama de herencias de Pds::Vector
Inheritance graph
Diagrama de colaboración para Pds::Vector:
Collaboration graph

Métodos públicos

Varios tipos de constructores

Crean una objeto Pds::Vector

 Vector (void)
 Crea un objeto de tipo Pds::Vector. Más...
 
 Vector (unsigned int N)
 Crea un objeto de tipo Pds::Vector. Más...
 
 Vector (const Pds::Size &S)
 Crea un objeto de tipo Pds::Vector con elementos inicializados con cero. Más...
 
 Vector (const Pds::Matrix &B)
 Crea un objeto de tipo Pds::Vector copiando datos desde una matriz. Toda la matriz es vectorizada leyendo columna a columna. Más...
 
template<class Datum >
 Vector (const Pds::Array< Datum > &B)
 Crea un objeto de tipo Pds::Vector copiando datos desde un arreglo. Más...
 
 Vector (const char *str)
 Crea un objeto de tipo Pds::Vector copiando datos desde una cadena. Más...
 
 Vector (const std::initializer_list< double > list)
 Crea un objeto de tipo Pds::Vector copiando datos desde una lista. Más...
 
 Vector (const std::vector< double > &vec)
 Crea un objeto de tipo Pds::Vector copiando datos desde una std::vector. Más...
 
 Vector (const std::vector< int > &vec)
 Crea un objeto de tipo Pds::Vector copiando datos desde una std::vector. Más...
 
 Vector (const std::vector< bool > &vec)
 Crea un objeto de tipo Pds::Vector copiando datos desde una std::vector. Más...
 
 Vector (unsigned int N, double val)
 Crea un objeto de tipo Pds::Vector. Más...
 
 Vector (const Pds::Matrix &B, unsigned int col)
 Crea un objeto de tipo Pds::Vector copiando datos desde una columna de una matriz. Más...
 
 Vector (double(*func)(double), const Pds::Vector &B)
 Crea un objeto de tipo Pds::Vector, evaluando mediante una función, los datos de otro vector. Más...
 
 Vector (double(*func)(double), const Pds::Matrix &B)
 Crea un objeto de tipo Pds::Vector, evaluando mediante una función, los datos de una matriz vectorizada. Más...
 
 Vector (Pds::Ra::FormatType Type, std::string filepath)
 Crea un objeto de tipo Pds::Vector copiando datos desde un archivo. Más...
 
 ~Vector ()
 
Operadores unarios.
Pds::Vector Unit (void) const
 Calcula el vector unitario de $\mathbf{a}$. Más...
 
bool Normalize (void)
 Normaliza el vector convirtiendolo en unvector unitario. Más...
 
Pds::Vector Reverse (void)
 Retorna $\mathbf{b}$ un vector en orden reverso de si mismo, $\mathbf{a}$. Más...
 
Pds::Vector Cumulative (void)
 Retorna un vector $\mathbf{b}$ que acumula la suma de elementos de $\mathbf{a}$. Más...
 
Pds::Vector CumulativeNorm (void)
 Retorna un vector $\mathbf{b}$ que acumula y normaliza la suma de elementos de $\mathbf{a}$. Más...
 
Métodos para reordenar memoria con Pds::Vector.
bool Reshape (unsigned int Nlin, unsigned int Ncol)
 Remodela los datos internos de la array y la convierte en una array de tamaño diferente, los datos que faltan se rellenan con cero. Más...
 
bool Reshape (unsigned int Nel)
 Remodela los datos internos de la array y la convierte en una array de tamaño diferente, los datos que faltan se rellenan con cero. Más...
 
bool FusionVer (std::list< Pds::Matrix > &list)
 Concatena verticalmente varias matrices.
Si las matrices no tienen el mismo número de columnas se considera um error. Si las matrices no tienen un número de columnas igual a 1 da un error. Destruye las matrices en list. Este metodo es mas rapido que Pds::MergeVer(list) pues transplanta memoria. Más...
 
Métodos para calculo de kmeans y centroides con Pds::Vector

Descripción de algunos operadores habilitados a trabajar con Pds::Vector.

std::vector< unsigned int > NearestK (unsigned int K, const std::vector< Pds::Vector > &C, std::vector< double > &D2) const
 Calcula que linea $m$ de $\mathbf{C}\in \mathbb{R}^{M\times N}$ es mas cercana al vector $\mathbf{v}\in \mathbb{R}^{N}$. Más...
 
Métodos para ordenar Pds::Vector.
bool SortWith (Pds::Matrix &A)
 Ordena de forma ascendente un vector y se lleva consigo una matriz A ordenando tambien las filas de esta. Más...
 
bool SortMe (void)
 Ordena de forma ascendente un vector . Más...
 
bool SortMeReverse (void)
 Ordena de forma descendente un vector . Más...
 
std::vector< unsigned int > SortMeAndGetIds (void)
 Ordena de forma ascendente un vector e retorna el vector de IDs. Más...
 
bool SortFollowing (const std::vector< unsigned int > &id)
 Ordena de forma ascendente un vector siguiendo un vector de IDs. En caso de error no se hace nada, se considera error si el tamaño de is es diferente del tamaño del vector, o si algún id es mayor que el tamaño del vector. Más...
 
Métodos get set con Pds::Vector.
const double & operator[] (const unsigned int &id) const
 Retorna el valor en cada posicion del vector (solo lectura). Más...
 
const double & GetRaw (unsigned int lin) const
 Retorna una variable Datum en la posición (lin,0) de vector. Más...
 
void SetRaw (unsigned int lin, const double &val)
 Establece una variable Datum en la posición (lin,0) del vector. Más...
 
Métodos para exportar e importar Json con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

Pds::Json ToJson (void) const
 Retorna un objeto Pds::Json con el contenido del vector. Más...
 
bool FromJson (const Pds::Json &J)
 Lee un objeto Pds::Json busca la etiqueta "Vector" y lo carga en la matriz. El objeto debe tener al menos los siguientes dados. Más...
 
Operadores binarios acumuladores y sus métodos equivalentes

Descripción de algunos operadores habilitados a trabajar con Pds::Vector.

bool Copy (const Pds::Matrix &B)
 Copia en si mismo (A), el contenido de una matriz B vectorizandola columana a columna. Este método es similar a usar el operador = . No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos es reservado. Más...
 
bool Vectorize (const Pds::Matrix &B)
 Copia en si mismo (A), el contenido de una matriz B vectorizandola columana a columna. Este método es equivalente a Copy(). Más...
 
bool CopyFromRow (unsigned int lin, const Pds::Matrix &B)
 Copia en si mismo (A), una linea de la matriz B. El tamaño de A debe ser el mismo que las columnas de B. Más...
 
void AddRawAssigAt (unsigned int lin, const double &val)
 Suma un valor al contenido de un elemento lin (acumula). Elem+=val. Más...
 
Métodos de estado

Indican o establecen el estado de una matriz.

bool IsEmpty (void) const
 Verifica si la matriz es nula es decir con lineas o columnas cero o arreglo NULL. Más...
 
bool IsNotEmpty (void) const
 Verifica si la matriz NO es nula, es decir con lineas y columnas diferentes cero y arreglo diferente de NULL. Más...
 
bool IsSimilarTo (const Pds::Matrix &B) const
 Verifica si las matrices son similares en tamaño. Más...
 
bool IsNotSimilarTo (const Pds::Matrix &B) const
 Verifica si las matrices son similares en tamaño. Más...
 
bool IsMulBy (const Pds::Matrix &B) const
 Verifica si las matrices son multiplicables. Más...
 
bool IsNotMulBy (const Pds::Matrix &B) const
 Verifica si las matrices son multiplicables. Más...
 
bool IsInRange (unsigned int lin, unsigned int col) const
 Verifica si la posición pertenece a la matriz. Más...
 
bool IsNotInRange (unsigned int lin, unsigned int col) const
 Verifica si la posición NO pertenece a la matriz. Más...
 
bool IsInSizeRange (double lin, double col) const
 Verifica si la posición (lin,col) pertenece al rango de la matriz. Más...
 
bool IsRowMatrix (void) const
 Verifica si la matriz tiene solo una linea. Más...
 
bool IsColMatrix (void) const
 Verifica si la matriz tiene solo una columna. Más...
 
bool IsZero (void) const
 Verifica si la matriz está llena de zeros. Más...
 
bool IsLeq (double val) const
 Verifica si cada elemento de la matriz es menor a el valor val. Más...
 
bool IsLeq (const Pds::Matrix &B) const
 Verifica si cada elemento de la matriz es menor igual a cada elemento de la matriz B. Más...
 
bool IsGeq (double val) const
 Verifica si cada elemento de la matriz es mayor a el valor val. Más...
 
bool IsGeq (const Pds::Matrix &B) const
 Verifica si cada elemento de la matriz es mayor igual a cada elemento de la matriz B. Más...
 
bool IsEqualTo (double val) const
 Verifica si cada elemento de la matriz es igual a el valor val. Más...
 
bool IsEqualTo (const Pds::Matrix &B) const
 Verifica si cada elemento de la matriz es igual a cada elemento de la matriz B. Más...
 
bool HasLeq (double val) const
 Verifica si existe al menos un elemento de la matriz menor o igual a el valor val. Más...
 
bool HasGeq (double val) const
 Verifica si existe al menos un elemento de la matriz mayor o igual a el valor val. Más...
 
bool HasInf (void) const
 Verifica si la matriz tiene algun valor infinito. Más...
 
bool HasNan (void) const
 Verifica si la matriz tiene algun valor NAN (Not A Number). Más...
 
bool HasNotFinite (void) const
 Verifica si la matriz tiene elementos no finitos (+inf, -inf y NAN). Más...
 
Métodos de inicialización

Establecen los valores de las matrices.

bool FillRandC (double p1)
 Inicializa la matriz con números aleatórios unos y ceros, la probabilidad de 1 es p1. Más...
 
bool FillRandN (void)
 Inicializa la matriz con números aleatórios, distribuidos usando una distribución Gaussiana normalizada con media 0 y desvío padrón 1.0. Más...
 
bool FillRandN (double U, double Sigma)
 Inicializa la matriz con números aleatórios, distribuidos usando una distribución Gaussiana con media U y desvío padrón Sigma. Más...
 
bool FillRandU (void)
 Inicializa la matriz con números aleatórios, distribuidos uniformemente, desde 0 a 1.0, incluyendo 0 y excluyendo 1.0. Más...
 
bool FillRandU (int a, int b)
 Inicializa la matriz con números aleatórios, distribuidos uniformemente, desde a a b, incluyendo a y b. Más...
 
bool FillRandU (double a, double b)
 Inicializa la matriz con números aleatórios, distribuidos uniformemente, desde a a b, incluyendo a y b. Más...
 
bool FillId (void)
 Inicializa la matriz con el valor de la posición de cada elemento. Más...
 
bool FillBcd (unsigned int n)
 Escribe un número en digital codificado en binário (BCD), escribe primero en una columna entera y luego pasa a la siguiente. Más...
 
bool Fill (Pds::AbstractRV &RV)
 Inicializa la matriz con un valor aleatório. Más...
 
bool Fill (double val)
 Inicializa la matriz con un valor constante. Más...
 
template<class Datum >
bool Fill (const std::vector< Datum > &P)
 Inicializa la matriz con un valor constante. Más...
 
bool FillLinSpace (double a, double b)
 Inicializa la matriz con un espacio linear entre begin y end. Se inicializa primero una columna ante de pasar ala siguiente. Más...
 
Métodos de tamaño

Herramientas genéricas para lectura y escritura de datos.

unsigned int Nlin (void) const
 Retorna el número de lineas de la matriz. Más...
 
unsigned int Ncol (void) const
 Retorna el número de columnas de la matriz. Más...
 
unsigned int Nel (void) const
 Retorna el número de elementos de la matriz (Nlin x Ncol). Más...
 
Pds::Size Size (void) const
 Retorna un objeto de tipo Pds::Size con el número de lineas y columans. Más...
 
unsigned int LinEnd (void) const
 Retorna el identificador de la ultima linea de la matriz. Más...
 
unsigned int ColEnd (void) const
 Retorna el identificador de la ultima columna de la matriz. Más...
 
unsigned int End (void) const
 Retorna el identificador del ultimo elemento de la matriz. Más...
 
Métodos get y set de elementos

Herramientas genéricas para lectura y escritura de datos.

double Get (unsigned int id) const
 Retorna el valor en la posición del índice id, hace una verificación si la posición existe. Más...
 
double Get (unsigned int lin, unsigned int col) const
 Retorna el valor en la posición (lin,col), hace una verificación si la posición existe. Más...
 
Pds::Vector Get (const std::vector< Pds::Position > &P) const
 Retorna el valor en las posiciones P[n]. Hace una verificación si la posiciones existen. Más...
 
double Get (const Pds::Position &P) const
 Retorna el valor en la posición (lin,col), hace una verificación si la posición existe. Más...
 
const double & GetRaw (unsigned int lin, unsigned int col) const
 Retorna una variable double en la posición (lin,col) de la array. Más...
 
void SetRaw (unsigned int lin, unsigned int col, const double &val)
 Establece una variable double en la posición (lin,col) de la array. Más...
 
bool Set (unsigned int id, double val)
 Escribe el valor en la posición del índice id, hace una verificación si la posición existe. Más...
 
bool Set (unsigned int lin, unsigned int col, double val)
 Escribe el valor en la posición (lin,col), hace una verificación si la posición existe. Más...
 
double & In (unsigned int lin, unsigned int col)
 Retorna una variable double en la posición (lin,col) de la matriz. Hace una verificación para evitar leer o escribir fuera de la memoria, con este fin hace lin=linNlin y col=colNcol. Más...
 
double & In (unsigned int id)
 Retorna una variable double en la posición (id) de la matriz. Hace una verificación para evitar leer o escribir fuera de la memoria, con este fin hace id=id%(Nlin*Ncol). Más...
 
double Bilinear (double lin, double col) const
 Retorna el valor en la posición (lin,col), usando una interpolación bilinear, valores fuera del rango de la matriz retornan cero. Más...
 
Métodos get y set de matrices y vectores

Herramientas genericas para lectura y escritura de datos.

Pds::Vector GetDiagonal (void) const
 Retorna un vector columna copia de los valores de la diagonal de la matriz. Más...
 
bool SetDiagonal (const Pds::Vector V)
 Copia un vector columna en una diagonal de la matriz. Si los tamaños son diferentes, se interceptan las matrices y se copia solamente en la intersección. Más...
 
bool SetDiagonal (double val)
 Copia un valor en una diagonal de la matriz. Copia hasta donde exista la diagonal. Más...
 
Pds::Matrix GetMatrix (unsigned int lin_init, unsigned int col_init, unsigned int lin_end, unsigned int col_end) const
 Retorna una sub matriz desde la posición (lin_init,col_init) hasta (lin_end,col_end), inclusive. Hace una verificación si la posición existe, si no existe llena con ceros. Más...
 
Pds::Matrix GetMatrix (unsigned int lin_init, unsigned int col_init, Pds::Size size) const
 Retorna una sub matriz desde la posición (lin_init,col_init) hasta (lin_end,col_end), inclusive. Hace una verificación si la posición existe, si no existe llena con ceros. Más...
 
bool SetMatrix (unsigned int lin, unsigned int col, const Pds::Matrix &B)
 Copia en si mismo (A) en la posicion (lin,col), el contenido de una matriz B. Si a matriz B no cabe em A se retorna false. Más...
 
Pds::Matrix GetRow (unsigned int lin) const
 Retorna una matriz linea escojida en la linea lin. Hace una verificación si la linea existe, si no existe devuelve una matriz vacia. Más...
 
bool GetRow (unsigned int lin, Pds::Matrix &Row) const
 Retorna una matriz linea escojida en la linea lin de X. Hace una verificación si la linea existe y si Row es linea, si no existe devuelve false. Más...
 
Pds::Vector GetRowAsColVector (unsigned int lin) const
 Retorna un vector columna copia de una linea de la matriz. Más...
 
bool GetRowAsColVector (unsigned int lin, Pds::Vector &V) const
 Retorna un vector columna copia de una linea de la matriz. Más...
 
bool GetRows (unsigned int lin_init, unsigned int lin_end, Pds::Matrix &B) const
 Retorna una sub matriz escojida desde la linea lin_init hasta lin_end, inclusive. Hace una verificación si la linea existe, si no existe llena esta con ceros. Más...
 
Pds::Matrix GetRows (unsigned int lin_init, unsigned int lin_end) const
 Retorna una sub matriz escojida desde la linea lin_init hasta lin_end, inclusive. Hace una verificación si la linea existe, si no existe llena esta con ceros. Más...
 
Pds::Matrix GetRows (std::list< unsigned int > List) const
 Retorna una sub matriz escojida desde una lista de indices de lineas. Hace una verificación si los indices existen, si alguno no existe devuelve una matriz vacia. Más...
 
Pds::Matrix GetRows (std::vector< unsigned int > Vec) const
 Retorna una sub matriz escojida desde una lista de indices de lineas. Hace una verificación si los indices existen, si alguno no existe devuelve una matriz vacia. Más...
 
Pds::Matrix GetRowsRand (unsigned int N) const
 Retorna una sub matriz escojiendo N lineas aleatoriamente (sin repetición). Más...
 
Pds::Matrix GetCol (unsigned int col) const
 Retorna una matriz columna escojida en la columna col. Hace una verificación si la columna existe, si no existe devuelve una matriz vacia. Más...
 
bool GetCol (unsigned int col, Pds::Matrix &MatCol) const
 Retorna una matriz columna escojida en la columna col. Hace una verificación si la columna existe y tiene el tamanho de MatCol, si no existe devuelve false. Más...
 
Pds::Vector GetColVector (unsigned int col) const
 Retorna un vector columna copia de una columna de la matriz. Más...
 
bool GetColVector (unsigned int col, Pds::Vector &U) const
 Copia a un vector columna el contenido de una columna de la matriz. Más...
 
Pds::Matrix GetCols (unsigned int col_init, unsigned int col_end) const
 Retorna una sub matriz escojida desde la columna col_init hasta col_end, inclusive. Hace una verificación si la columna existe, si no existe llena esta con ceros. Más...
 
Pds::Matrix GetCols (std::list< unsigned int > List) const
 Retorna una sub matriz escojida desde una lista de indices de columnas. Hace una verificación si los indices existen, si alguno no existe devuelve una matriz vacia. Más...
 
Pds::Matrix GetCols (const std::initializer_list< unsigned int > List) const
 Retorna una sub matriz escojida desde una lista de indices de columnas. Hace una verificación si los indices existen, si alguno no existe devuelve una matriz vacia. Más...
 
Pds::Matrix GetCols (std::vector< unsigned int > Vec) const
 Retorna una sub matriz escojida desde una lista de indices de columnas. Hace una verificación si los indices existen, si alguno no existe devuelve una matriz vacia. Más...
 
Pds::Matrix GetColsRand (unsigned int N) const
 Retorna una sub matriz escojiendo N columnas aleatoriamente (sin repetición). Más...
 
bool SetRowValue (unsigned int lin, double value)
 Copia un valor en una linea de la matriz. Más...
 
bool SetRowVector (unsigned int lin, const Pds::Vector &X)
 Copia un vector en una linea de la matriz. Más...
 
bool SetColValue (unsigned int col, double value)
 Copia un valor en una columna de la matriz. Más...
 
bool SetColVector (unsigned int col, const Pds::Vector &V)
 Copia un vector columna en una columna de la matriz. Si los tamaños son diferentes, se interceptan las matrices y se copia solamente en la intersección. Más...
 
bool SetColVector (unsigned int col, double(*func)(double), const Pds::Vector &V)
 Copia un vector columna en una columna de la matriz, despues de evaluar el vector en una funcion. Si los tamaños son diferentes, se interceptan las matrices y se copia solamente en la intersección. Más...
 
bool SetColVector (unsigned int col, double(*func)(double, double), const Pds::Vector &V, double var)
 Copia un vector columna en una columna de la matriz, despues de evaluar el vector en una funcion. Si los tamaños son diferentes, se interceptan las matrices y se copia solamente en la intersección. Más...
 
std::vector< Pds::Point2DGetPoint2DsFromCols (unsigned int colx, unsigned int coly) const
 Copia un par de columnas de la matriz para convertirlas en un vector de Pds::Point2D. Más...
 
std::vector< double > ToStdVector (void) const
 Retorna un std::vector con los elelentos de la matriz, lee columna a columna. Más...
 
Métodos de opreaciones sobre las lineas de la matriz

operaciones con lineas

bool RowAddAssig (unsigned int lin1, unsigned int lin2, double alpha)
 Multiplica los valores de la linea lin2 por alfa y el resultado es sumado a los valores de la linea lin1. Más...
 
bool RowMulAssig (unsigned int lin, double alpha)
 Multiplica la linea lin por alpha. Más...
 
bool RowDivAssig (unsigned int lin, double alpha)
 Divide la linea lin por alpha. Más...
 
bool RowSwap (unsigned int lin1, unsigned int lin2)
 Intercambia los valores de las lineas de una matriz. Más...
 
int RowSwapBelow (unsigned int n)
 Si el n-avo elemento de la diagonal es cero entonces intercambia la linea n de la matriz con cualquier linea inferior con elemento diferente de cero en la columna n. Más...
 
bool RowReduction (void)
 Convierte la matriz en una matriz reducida. Más...
 
bool RowDivByAbsMax (void)
 Normaliza cada linea de la matriz dividiendola por el máximo valor absoluto de la linea. Si la linea tiene solo ceros esta no es modificada. Más...
 
Métodos estadísticos

Herramientas genéricas

std::map< int, unsigned int > IntegerCount (void) const
 Cuenta la cantidad de elementos enteros. Más...
 
std::set< int > IntegerSet (void) const
 Set de elementos enteros. Más...
 
double MultiplyValues (void) const
 Calcula el valor de la multiplicación de elementos en la matriz. Más...
 
double Sum (void) const
 Calcula el valor de la suma de elementos de la matriz. Más...
 
double Mean (void) const
 Calcula el valor medio de la matriz. Más...
 
Pds::Matrix MeanInCols (void) const
 Calcula el valor medio de las columnas de la matriz. Más...
 
Pds::Vector MeanInRows (void) const
 Calcula la media de cada linea de la matriz. Más...
 
double Std (double *mean=NULL) const
 Calcula el valor del desvío padrón de la matriz. Más...
 
Pds::Vector StdInRows (void) const
 Calcula el standard deviation de cada linea de la matriz. Más...
 
Pds::Matrix StdInCols (void) const
 Calcula el standard deviation de cada columna de la matriz. Más...
 
bool MeanStdInRows (Pds::Vector &Mean, Pds::Vector &Std) const
 Calcula la media y el standard deviation de cada linea de la matriz. Más...
 
bool MeanStdInCols (Pds::Matrix &Mean, Pds::Matrix &Std) const
 Calcula la media y el standard deviation de cada linea de la matriz. Más...
 
double Var (double *mean=NULL) const
 Calcula el valor de la varianza de la matriz. Más...
 
double Max (unsigned int *id=NULL) const
 Calcula el máximo valor de la matriz. Más...
 
double Min (unsigned int *id=NULL) const
 Calcula el mínimo valor de la matriz. Más...
 
double MaxAbs (unsigned int *id=NULL) const
 Calcula el máximo valor del valor absoluto de la matriz. Más...
 
double MinAbs (unsigned int *id=NULL) const
 Calcula el mínimo valor del valor absoluto de la matriz. Más...
 
Pds::Matrix MaxInCols (void) const
 Calcula el máximo en cada columna de la matriz. Más...
 
Pds::Matrix MaxInCols (std::vector< unsigned int > &Lin) const
 Calcula el máximo en cada columna de la matriz. Más...
 
Pds::Matrix MaxInCols (Pds::Array< unsigned int > &Lin) const
 Calcula el máximo en cada columna de la matriz. Más...
 
Pds::Matrix MinInCols (void) const
 Calcula el mínimo en cada columna de la matriz. Más...
 
Pds::Matrix MinInCols (std::vector< unsigned int > &Lin) const
 Calcula el mínimo en cada columna de la matriz. Más...
 
Pds::Matrix MinInCols (Pds::Array< unsigned int > &Lin) const
 Calcula el mínimo en cada columna de la matriz. Más...
 
Pds::Matrix MaxAbsInCols (void) const
 Retorna una matriz con el máximo valor absoluto de cada columna. Más...
 
Pds::Vector MaxAbsInRows (void) const
 Retorna un vector con el máximo valor absoluto de cada linea. Más...
 
Pds::Vector MinAbsInRows (void) const
 Retorna un vector con el mínimo valor absoluto de cada linea. Más...
 
Pds::Vector MaxInRows (void) const
 Retorna un vector con el máximo valor de cada linea. Más...
 
Pds::Vector MinInRows (void) const
 Retorna un vector con el mínimo valor de cada linea. Más...
 
Pds::Vector ArgMaxInRows (void) const
 Retorna un vector con el ID del máximo valor de cada linea. Más...
 
Pds::Vector ArgMinInRows (void) const
 Retorna un vector con el ID del mínimo valor de cada linea. Más...
 
bool ScalingColsAnalysis (Pds::Vector &Mean, Pds::Vector &Std)
 Calcula la media y el standard deviation de cada columna de la matriz. Si el std de la columna es cero esta no es normalizada. Más...
 
bool ScalingColsWith (const Pds::Vector &Mean, const Pds::Vector &Std)
 Escala cada columna de la matriz usando la media y el standard deviation de cada columna de la matriz. Si el std de la columna es cero esta no es normalizada. Más...
 
long int CountRoundEqualIn (const Pds::Matrix &B) const
 Calcula el número de elementos enteros iguales entre las matrices A y B. Más...
 
double Accuracy (const Pds::Matrix &B, double Umbral) const
 Calcula el valor de la Accuracy entre los elementos de las matrices A (Self) y B. Antes de comprarar las matrices se binarizan con el umbral Umbral. A>Umbral, B>Umbral. Más...
 
double NAccuracy (const Pds::Matrix &B) const
 Calcula el valor de la Accuracy entre los elementos de las matrices A (Self) y B. Antes de comprarar las matrices se conviertena enteros con round(). Más...
 
double R2 (const Pds::Matrix &Y) const
 Calcula el coeficiente de determinación o $R^2$. Más...
 
double Rf (const Pds::Matrix &Y) const
 Calcula o $RF$. Más...
 
double Mape (const Pds::Matrix &B) const
 Calcula el error absoluto medio porcentual (Mean Absolute Percentage Error) de una matriz. Más...
 
Métodos Information theory

Herramientas genéricas

double InformationGain (const std::vector< Pds::Matrix > &A, double Umbral=0.5) const
 Retorna el Information Gain entre si mismo B y {A[0],A[1],...,A[N-1]}. Antes de comprarar las matrices se binarizan con el umbral Umbral. A[n]>Umbral, B>Umbral. Más...
 
double BinaryEntropy (double umbral) const
 Calcula la entropia binaria de la estadistica de $p_1$ y $p_0$, la probabilidade de unos y ceros en la matriz despues de ubralizar con >=umbral. Más...
 
double P1Probability (double umbral) const
 Calcula la probabilidad binaria $p_1$, la probabilidade en relación a los unos y ceros en la matriz despues de ubralizar con >=umbral. Más...
 
Pds::Matrix BalancedBinaryWeight (double umbral) const
 Retorna una matriz de pesos para balancear la cantidad de 1s y 0s en la matriz. Los unos y ceros en la matriz son obtenidos despues de ubralizar con >=umbral. Más...
 
Métodos de álgebra lineal

Herramientas genéricas

bool QR (Pds::Matrix &Q, Pds::Matrix &R) const
 Calcula la descomposición QR de una matriz $A \in \mathrm{R}^{M \times N}$. Más...
 
Pds::Matrix CholeskyBanachiewicz (void) const
 Dada una matriz simétrica definida positiva $\mathbf{A}$, este método realiza la descomposición Cholesky, especificamente Cholesky-Banachiewicz. Más...
 
Pds::Matrix CholeskyCrout (void) const
 Dada una matriz simétrica definida positiva $\mathbf{A}$, este método realiza la descomposición Cholesky, especificamente Cholesky-Crout. Más...
 
Pds::Matrix HessenbergReduction (void) const
 Dada una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$, este metodo retorna una Matriz de Hessenberg ( $\mathbf{H} \in \mathrm{R}^{N \times N}$) semejante a la matriz $\mathbf{A}$. La matriz $\mathbf{H}$ es calculada siguiendo la Householder transformation. Más...
 
Pds::Matrix SubLambdaI (double lambda) const
 Dada una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$, este metodo retorna : Más...
 
Pds::Matrix AddLambdaI (double lambda) const
 Dada una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$, este metodo retorna : Más...
 
double QuadraticForm (const Pds::Vector &x) const
 Calcula la forma cuadrática $\mathbf{x}^{T} \mathbf{A} \mathbf{x}$. Más...
 
Pds::Vector QuadraticFormWithRows (const Pds::Matrix &X) const
 Calcula la forma cuadrática $\mathbf{x}_{l}^{T} \mathbf{A} \mathbf{x}_{l}$. Más...
 
Pds::Vector QuadraticFormWithRows (const Pds::Matrix &X, const Pds::Vector &Mu) const
 Calcula la forma cuadrática $\mathbf{x}_{l}^{T} \mathbf{A} \mathbf{x}_{l}$. Más...
 
Pds::Matrix QuadraticFormWithSamples (const std::vector< Pds::Matrix > &X, const Pds::Vector &Mu) const
 Calcula la forma cuadrática $\mathbf{x}_{l}^{T} \mathbf{A} \mathbf{x}_{l}$. Más...
 
Pds::Vector QuadraticDotWithRows (const Pds::Vector &Mu) const
 Calcula la forma cuadrática $\mathbf{x}_{l}^{T} \mathbf{x}_{l}$. Más...
 
double MaxAbsOfLowerTriangular (void) const
 Retorna el máximo valor absoluto de los elementos abajo de la diagonal. La matriz no necesita ser cuadrada, lo elementos abajo de la diagonal se revisan hasta donde se pueda. Más...
 
double MaxAbsOfDiag (void) const
 Retorna el máximo valor absoluto de la diagonal de una matriz $\mathbf{A}$. La matriz no necesita ser cuadrada, la diagonal se revisa hasta donde se pueda. Más...
 
double MinAbsOfDiag (void) const
 Retorna el mínimo valor absoluto de la diagonal de una matriz $\mathbf{A}$. La matriz no necesita ser cuadrada, la diagonal se revisa hasta donde se pueda. Más...
 
double MinOfDiag (void) const
 Retorna el valor mínimo de la diagonal de una matriz cuadrada $\mathbf{A}$. Más...
 
double Det (void) const
 Calcula la determinante. Más...
 
double Dot (const Pds::Matrix &B) const
 Calcula el producto punto entre dos matrices. Más...
 
double RMS (void) const
 Calcula valor raiz quadrático medio de una matriz. Más...
 
double MeanAbsolute (void) const
 Calcula valor absoluto medio de una matriz. Más...
 
double MeanSquare (void) const
 Calcula valor quadrático medio de una matriz. Más...
 
double MSE (const Pds::Matrix &B) const
 Calcula valor del error quadrático medio (Mean Square Error) entre las matrices $A$ y $B$. Más...
 
double RMSE (const Pds::Matrix &B) const
 Calcula valor de la raiz cuadrada del error quadrático medio (Root Mean Square Error) entre las matrices $A$ y $B$. Más...
 
double PSNR (const Pds::Matrix &B, unsigned int NBITS) const
 Calcula valor del error quadrático medio entre las matrices $A$ y $B$. Más...
 
double SumSquare (void) const
 Calcula valor de la suma quadrática de una matriz. Más...
 
Pds::Vector SumSquareInRows (void) const
 Calcula la suma cuadrada de cada linea de la matriz. Más...
 
double NormDiff (const Pds::Matrix &B) const
 Calcula la 2-norm de una matriz (Frobenius norm). Más...
 
double NormDiff2 (const Pds::Matrix &B) const
 Calcula la 2-norm al cuadrado de una matriz. Más...
 
double Norm (void) const
 Calcula la 2-norm de una matriz (Frobenius norm). Más...
 
double PNorm1 (void) const
 Calcula la 1-norm de un vector. Más...
 
double PNormInf (void) const
 Calcula la inf-norm de una matriz. Más...
 
bool NormalizeRows (void)
 Normaliza cada linea de la matriz convirtiendolo en una linea unitaria. Más...
 
Pds::Vector MultiIndex (const Pds::Vector &d) const
 Dada una matriz $\mathbf{X}=\left[\mathbf{x}_1,\quad \mathbf{x}_2,\quad ...,\quad \mathbf{x}_n,\quad ...,\quad \mathbf{x}_N\right]$ es calculado el vector $\mathbf{\overline{X}}^{\mathbf{d}}$. Más...
 
Métodos de álgebra lineal - Eigenvalues Eigenvectors

Herramientas genéricas

Pds::Vector EigenValues (unsigned int MaxIter=2048, double MinFactor=0.00001, bool SortAsc=true) const
 Calcula los valores própios (Eigenvalues) de una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$ siguiendo el algoritmo shift QR, El resultado en la diagonal de $\mathbf{A}^{(k+1)}$ es cargado en el vector $\boldsymbol{\lambda} \in \mathrm{R}^{N}$. Más...
 
Pds::Matrix EigenVectors (const Pds::Vector &Lambda, unsigned int MaxIter=20000, bool EmptyWhenError=true) const
 Calcula los vectores própios (Eigenvectors) de una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$, Los vectores propios están colocados en las columnas de la matriz $\mathbf{V} \in \mathrm{R}^{N \times K}$. Más...
 
Pds::Vector EigenVector_RegInvIter (double lambda, const Pds::Vector &v0, unsigned int MaxIter=20000, bool EmptyWhenError=true) const
 Calcula un autovector (Eigenvector) de una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$. Internamente usa version regularizada del algoritmo Inverse iteration Más...
 
Pds::Vector EigenDominant (double &lambda, unsigned int MaxIter=20000) const
 Calcula el autovector (Eigenvector) y el autovalor (Eigenvalue) dominante en una matriz $\mathbf{A} \in \mathrm{R}^{N \times N}$. Internamente usa el algoritmo Power iteration Más...
 
Métodos para find

Herramientas genéricas

std::vector< unsigned int > Find (void) const
 Retorna una lista de indices donde existe un 1 en la matriz A. Más...
 
std::vector< unsigned int > FindIdOfKMin (unsigned int K) const
 Retorna un vector de indices de los K menores valores en la matriz A. Más...
 
std::vector< unsigned int > FindIdOfKMin (unsigned int K, std::vector< double > &dat) const
 Retorna un vector de indices de los K menores valores en la matriz A. Más...
 
Pds::Matrix FindRows (const Pds::Vector &B, double b=0.5) const
 Retorna una nueva matriz con las lineas donde existe un 1 en la matriz B. En verdad B es binarizado internamente con (B>b). La matriz debe tener el mismo número de lineas de B caso contrario se retorna una matriz vacia. Más...
 
Pds::Matrix FindVal (double val) const
 Retorna una nueva matriz B (binaria) con unos donde exista en A el valor val, y cero donde no se cumpla esta condición. Más...
 
bool FindValAndReplace (double val, double rep)
 Remplaza valores especificos por una matriz por otros. Más...
 
std::vector< Pds::MatrixFindRowsBlock (const Pds::Vector &V) const
 Retorna un vector de matrices con las lineas donde existe un mismo id en el vector $V$. En verdad $V$ es convertido a entero usando la función round(). La matriz debe tener el mismo número de lineas de $V$ caso contrario se retorna una matriz vacia. Más...
 
std::vector< Pds::MatrixFindRowsBlock (const Pds::Vector &V, std::vector< int > &Label) const
 Retorna un vector de matrices con las lineas donde existe un mismo id en el vector $V$. En verdad $V$ es convertido a entero usando la función round(). La matriz debe tener el mismo número de lineas de $V$ caso contrario se retorna una matriz vacia. Más...
 
std::vector< Pds::MatrixFindRowsBlock (const Pds::Array< unsigned int > &ID) const
 Retorna un grupo de matrices con las lineas donde existe el mismo indice id en la matriz entera $ID$. La matriz debe tener el mismo número de lineas que elementos en $ID$ caso contrario se retorna una matriz vacia. Más...
 
Métodos para aplicar operaciones

Herramientas genéricas

bool Apply (const Pds::Matrix &B)
 Aplica la función func a cada elemento de la matriz. La matriz que recibe debe tener el mismo tamaño que a matrices de entrada. Más...
 
bool Apply (double Alpha, const Pds::Matrix &B)
 Aplica la función func a cada elemento de la matriz. La matriz que recibe debe tener el mismo tamaño que a matrices de entrada. Más...
 
bool Apply (double(*func)(double))
 Aplica la función func a cada elemento de la matriz. Más...
 
bool Apply (double(*func)(double), const Pds::Matrix &B)
 Aplica la función func a cada elemento de la matriz. La matriz que recibe debe tener el mismo tamaño que a matrices de entrada. Más...
 
bool Apply (double(*func)(double, double), double var)
 Aplica la función func a cada elemento de la matriz. Más...
 
bool Apply (double(*func)(double, const std::vector< double > &), const std::vector< double > &var)
 Aplica la función func a cada elemento de la matriz. Más...
 
bool ApplyAdd (double(*func)(double), double alpha, const Pds::Matrix &B, double beta, const Pds::Matrix &C)
 Aplica la función func a cada elemento de la suma ponderada de las matrices. La matriz que recibe debe tener el mismo tamaño que a matrices de entrada. Más...
 
bool ApplyAdd (double alpha, const Pds::Matrix &B, double beta, const Pds::Matrix &C)
 Aplica la función func a cada elemento de la suma ponderada de las matrices. La matriz que recibe debe tener el mismo tamaño que a matrices de entrada. Más...
 
bool ApplySub (double(*func)(double), const Pds::Matrix &B, const Pds::Matrix &C)
 Aplica la función func a cada elemento de la diferencia de matrices. La matriz que recibe debe tener el mismo tamaño que a matrices de entrada. Más...
 
bool ApplySub (const Pds::Matrix &B, const Pds::Matrix &C)
 Aplica a cada elemento de la diferencia de matrices. La matriz que recibe debe tener el mismo tamaño que las matrices de entrada. Más...
 
bool ApplyProduct (const Pds::Matrix &B, const Pds::Matrix &C)
 [Elemento a elemento] Aplica a cada elemento de la multiplicación de matrices. La matriz que recibe debe tener el mismo tamaño que las matrices de entrada. Más...
 
bool ApplyInCol (unsigned int col, double(*func)(double))
 Aplica la función func a cada elemento de la columna col de la matriz. Más...
 
bool ApplyInCol (unsigned int col, double(*func)(double, double), double var)
 Aplica la función func a cada elemento de la columna col de la matriz. Más...
 
Métodos para operar Pds::Matrix

Herramientas genéricas

Pds::Matrix OperateRows (double(*func)(const Pds::Matrix &Row)) const
 Opera la función func usando como entrada cada fila de la matriz. Más...
 
Pds::Matrix OperateRows (double(*func)(const Pds::Vector &Row)) const
 Opera la función func usando como entrada cada fila de la matriz. Más...
 
Pds::Matrix OperateRows (double(*func)(const Pds::Vector &Row, const Pds::Vector &C), const Pds::Vector &C) const
 Opera la función func usando como entrada cada fila de la matriz. Más...
 
Pds::Matrix OperateRows (double(*func)(const Pds::Vector &Row, const Pds::Vector &C, const std::vector< double > &var), const Pds::Vector &C, const std::vector< double > &var) const
 Opera la función func usando como entrada cada fila de la matriz. Más...
 
Pds::Matrix OperateCols (double(*func)(const Pds::Matrix &Col)) const
 Opera la función func usando como entrada cada columna de la matriz. Más...
 
Pds::Matrix OperateCols (double(*func)(const Pds::Vector &Col)) const
 Opera la función func usando como entrada cada columna de la matriz. Más...
 
Pds::Matrix OperateCols (double(*func)(const Pds::Vector &Col, const Pds::Vector &C), const Pds::Vector &C) const
 Opera la función func usando como entrada cada columna de la matriz. Más...
 
Pds::Matrix TransformRows (Pds::Vector(*func)(const Pds::Vector &Row, const Pds::Vector &C), const Pds::Vector &C) const
 Opera la función func usando como entrada cada fila de la matriz. Más...
 
Pds::Matrix Scale (double minval, double maxval) const
 Rescala linearmente los datos desde minval a maxval. Más...
 
Pds::Matrix Round (unsigned int decimal=0) const
 Retorna una matriz con los valores redondeados. Más...
 
Métodos con regiones con Pds::Matrix.

Herramientas genéricas

bool CopyRegion (const Pds::RegionRect &Rin, const Pds::RegionRect &Rout, Pds::Matrix &Mout) const
 Copia la región Rin de la matriz a la región Rout de la matriz Mout. Más...
 
bool InitRegion (Pds::RegionRect R, double val)
 Inicializa la región R de la matriz con el valor val. Más...
 
Pds::RegionRect GetRegion (void) const
 Retorna una variable Pds::RegionRect desde la posicion (0,0), con ancho y alto (Mat.Nlin(),Mat.Ncol()). Más...
 
bool MeanOfRegion (const Pds::RegionRect &Rin, double *mean) const
 Calcula la media de los elementos en la region, pero para que sea calculado debe existir una interseccion diferente de zero con la matriz. Los valores fuera de la matriz son considerados cero. Más...
 
double MeanOfRegion (const Pds::RegionRect &Rin) const
 Calcula la media de los elementos en la region, pero para que sea calculado debe existir una interseccion diferente de zero con la matriz. Los valores fuera de la matriz son considerados cero. Más...
 
bool MeanSquareOfRegion (const Pds::RegionRect &Rin, double *mean) const
 Calcula la media del cuadrado de los elementos en la region, pero para que sea calculado debe existir una interseccion diferente de zero con la matriz. Los valores fuera de la matriz son considerados cero. Más...
 
double MeanSquareOfRegion (const Pds::RegionRect &Rin) const
 Calcula la media del cuadrado de los elementos en la region, pero para que sea calculado debe existir una interseccion diferente de zero con la matriz. Los valores fuera de la matriz son considerados cero. Más...
 
bool StdAndMeanOfRegion (const Pds::RegionRect &Rin, double *std, double *mean) const
 Calcula el desvío padrón y la media de los elementos de la intersección de la región con la matriz. Más...
 
bool CorrNormRegions (const Pds::Matrix &M1, const Pds::RegionRect &R0, const Pds::RegionRect &R1, double *corrn) const
 Calcula correlación normalizada entre los elementos de la intersección de la regiones con sus matrices. Más...
 
bool CorrNormRegions (const Pds::Matrix &M1, const Pds::RegionRect &R0, const Pds::RegionRect &R1, double means0, double means1, double *corrn) const
 Calcula correlación normalizada entre los elementos de la intersección de la regiones con sus matrices. Más...
 
bool CorrPearsonRegions (const Pds::Matrix &M1, const Pds::RegionRect &R0, const Pds::RegionRect &R1, double *pcc) const
 Calcula el coeficiente de correlación de Pearson (PCC) entre los elementos de la intersección de la regiones con sus matrices. Más...
 
bool CorrPearsonRegions (const Pds::Matrix &M1, const Pds::RegionRect &R0, const Pds::RegionRect &R1, double mean0, double mean1, double std0, double std1, double *pcc) const
 Calcula el coeficiente de correlación de Pearson (PCC) entre los elementos de la intersección de la regiones con sus matrices. Más...
 
Métodos variados con Pds::Matrix.

Herramientas genéricas

std::string ToString (void) const
 Convierte los datos de la matriz en un std::string. Más...
 
std::string ToString (const std::string &EndData) const
 Convierte los datos de la matriz en un std::string. Más...
 
void Print (const std::string &str, unsigned int precision) const
 Imprime en pantalla el contenido de la matriz después del texto indicado en str. Más...
 
void Print (const std::string &str) const
 Imprime en pantalla el contenido de la matriz después del texto indicado en str. Más...
 
void Print (void) const
 Imprime en pantalla el contenido de la matriz. Más...
 
Métodos para reordenar memoria con Pds::Matrix.

Herramientas genéricas

void MakeEmpty (void)
 libera los datos internos de la matriz y la convierte en una matriz nula. es decir con lineas y columnas cero. Más...
 
Pds::Matrix Remodel (unsigned int Nlin, unsigned int Ncol)
 Remodela los datos internos de la array y retorna un array de tamaño diferente, los datos que faltan se rellenan con cero. Más...
 
Métodos para exportar e importar TXT con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool SaveInStream (std::ofstream &myfile) const
 Escribe en un archivo de texto el contenido de la matriz. Más...
 
bool LoadFromStream (std::ifstream &ifs, unsigned int Nlin, unsigned int Ncol)
 Lee Nlin*Ncol elementos desde un archivo, estos elementos son colocados en una matriz de Nlin lineas y Ncol columnas. Cada elemento es separado por tabuladores y cada linea por un salto de linea. Más...
 
bool LoadLineFromStream (std::ifstream &ifs)
 Lee una linea de un archivo y crea una matriz de Nlin=1 y Ncol columnas. Cada elemento es separado por tabuladores y cada linea por un salto de linea. Más...
 
bool Save (const std::string &filepath) const
 Escribe en un archivo de texto el contenido de la matriz. Más...
 
bool Load (const std::string &filepath)
 Lee desde un archivo una matriz de Nlin lineas y Ncol columnas. Más...
 
Métodos para exportar e importar CSV con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool ExportCsvFile (const std::string &filepath, char delimitador=',') const
 Escribe en un archivo de texto el contenido de la matriz usando un formato Csv (Comma Separated Values). Más...
 
bool ExportCsvFile (const std::string &filepath, std::vector< std::string > titles, char delimitador=',') const
 Escribe en un archivo de texto el contenido de la matriz usando un formato Csv (Comma Separated Values). Más...
 
bool ImportCsvFile (const std::string &filepath, char delimitador, std::vector< std::string > &titles)
 Lee un archivo de texto el contenido de la matriz usando un formato Csv (Comma Separated Values). Más...
 
bool ImportCsvFileWithoutTitles (const std::string &filepath, char delimitador)
 Lee un archivo de texto el contenido de la matriz usando un formato Csv (Comma Separated Values). Más...
 
Métodos para exportar e importar TEX con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool ExportTexFile (const std::string &filepath, const std::vector< std::string > &titles, const std::vector< std::string > &rowtitles, const std::string &caption="My caption", const std::string &label="mylabel") const
 Escribe en un archivo de texto el contenido de la matriz usando un formato de tabla de tex. Más...
 
bool ExportTexFile (const std::string &filepath, const std::vector< std::string > &titles, const std::string &caption="My caption", const std::string &label="mylabel") const
 Escribe en un archivo de texto el contenido de la matriz usando un formato de tabla de tex. Más...
 
bool ExportTexFile (const std::string &filepath, const std::string &caption="My caption", const std::string &label="mylabel") const
 Escribe en un archivo de texto el contenido de la matriz usando un formato de tabla de tex. Más...
 
Métodos para exportar e importar Json con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool ExportJsonToStream (std::ofstream &myfile) const
 Escribe en un archivo Json el contenido de la matriz. Más...
 
bool ExportJsonToStream (std::ofstream &myfile, unsigned int ntabs) const
 Escribe en un archivo Json el contenido de la matriz. Más...
 
std::string ExportJsonToString (unsigned int ntabs) const
 Retorna una cadena de texto en formato Json con el contenido de la matriz. Más...
 
Métodos para exportar e importar XML con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool ExportXmlToStream (std::ofstream &myfile) const
 Escribe en un archivo Xml el contenido de la matriz. Más...
 
bool ExportXmlToStringStream (std::stringstream &sstream) const
 Escribe en un std::stringstream en formato Xml el contenido de la matriz. Más...
 
std::string ExportXmlToString (void) const
 Retorna un std::string en formato Xml con el contenido de la matriz. Más...
 
bool ImportXmlFromString (const std::string &str)
 Carga el contenido de una matriz desde un std::string en formato Xml. Más...
 
Métodos para exportar en formato Octave/Matlab desde Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool ExportMatFile (const std::string &pname, const std::string &filepath) const
 Escribe en un archivo binario en formato de octave la matriz. Es necesario dar un nombre como identificador de matriz. Más...
 
std::string ExportOctaveString (const std::string &pname) const
 Retorna un std:string con los datos de la matriz en el formato de octave. Es necesario dar un nombre como identificador de matriz. Más...
 
Métodos para exportar e importar BMP con Pds::Matrix.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

bool ExportBmpFile (const unsigned char colormap[256][3], const std::string &filepath) const
 Escribe en una matriz en un archivo binario en formato BMP. Losdatos deben ir de 0 a 255, valores superiores o inferiores serán truncados. Más...
 
bool ExportBmpFileScale (const unsigned char colormap[256][3], const std::string &filepath) const
 Escribe en una matriz en un archivo binario en formato BMP. Escala los datos de de 0 a 255, si el valor minimo y máximo son iguales la matriz se llena con ceros. Más...
 
Operadores unarios y sus métodos equivalentes con Pds::Matrix.

Descripción de algunos operadores habilitados a trabajar con Pds::Matrix.

Pds::Matrix T (void) const
 Transpuesta de si mismo (A), el resultado es cargado en B. Más...
 
Pds::Matrix MtM (void) const
 Retorna A.T()*A cargado en B. Más...
 
Pds::Matrix MtM (const Pds::Matrix &B) const
 Retorna A.T()*A cargado en B. Más...
 
Pds::Matrix MMt (void) const
 Retorna A*A.T() cargado en B. Más...
 
Pds::Matrix MMt (const Pds::Matrix &B) const
 Retorna A*A.T() cargado en B. Más...
 
Pds::Matrix Inv (double *rcond=NULL) const
 Retorna la matriz inversa. Más...
 
Pds::Matrix PInv (double *rcond=NULL) const
 Procesa esta matriz A y retorna B la matriz pseudo inversa de Moore Penrose. Más...
 
Pds::Matrix operator- (void) const
 Cambia de signo a si mismo (A), el resultado es cargado en B. Este operador es similar al método unario Minus. Más...
 
Pds::Matrix Minus (void) const
 Cambia de signo a si mismo (A), el resultado es cargado en B. Este método es similar al operador unario -. Más...
 
Pds::Matrix operator+ (void) const
 Asigna el signo + a si mismo (A), el resultado es cargado en B. Este operador es similar al método unario Plus. Más...
 
Pds::Matrix Plus (void) const
 Asigna el signo + a si mismo (A), el resultado es cargado en B. Este método es similar al operador unario +. Más...
 
Operadores binarios y sus métodos equivalentes con Pds::Matrix.

Descripción de algunos operadores habilitados a trabajar con Pds::Matrix.

Pds::Matrix operator- (double b) const
 [Elemento a elemento] Resta con sigo mismo (A), un valor b y el resultado es cargado en C. Este operador es similar al método Sub() Más...
 
Pds::Matrix operator- (const Pds::Matrix &B) const
 [Elemento a elemento] Resta con sigo mismo (A), una matriz B y el resultado es cargado en C. Este operador es similar al método Sub Más...
 
Pds::Matrix operator+ (double b) const
 [Elemento a elemento] Suma con sigo mismo (A), un valor b y el resultado es cargado en C. Este operador es similar al método Add() Más...
 
Pds::Matrix operator+ (const Pds::Matrix &B) const
 [Elemento a elemento] Suma con sigo mismo (A), una matriz B y el resultado es cargado en C. Este operador es similar al método Add() Más...
 
Pds::Matrix operator* (double b) const
 Multiplica con sigo mismo (A), un valor b y el resultado es cargado en C. Este operador es similar al método Mul() Más...
 
Pds::Matrix operator* (const Pds::Matrix &B) const
 Multiplica con sigo mismo (A), una matriz B y el resultado es cargado en C. Este operador es similar al método Mul() Más...
 
Pds::Matrix Mul (double b) const
 Multiplica con sigo mismo (A), un valor b y el resultado es cargado en C. Este método es similar al operador *. Más...
 
Pds::Matrix Mul (const Pds::Matrix &B) const
 Multiplica con sigo mismo (A), una matriz B y el resultado es cargado en C. Este método es similar al operador *. Más...
 
bool Mul (const Pds::Matrix &B, Pds::Matrix &Out) const
 Multiplica con sigo mismo (A), una matriz B y el resultado es cargado en Out. Este método es similar al operador *. Más...
 
Pds::Matrix Mul (const Pds::Vector &B) const
 Multiplica con sigo mismo (A), un vector B y el resultado es cargado en C. Este método es similar al operador *. Más...
 
Pds::Matrix MulRowMatrix (const Pds::Matrix &B) const
 [Elemento a elemento] Multiplica con sigo mismo (A), una matriz B linea y el resultado es cargado en C. La unica linea de B es Multiplicada a cada linea de A. Más...
 
Pds::Matrix MulComp (double b, const Pds::Vector &B) const
 Multiplica con sigo mismo (A), un vector [b;B] y el resultado es cargado en C. Más...
 
bool MulComp (double b, const Pds::Vector &B, Pds::Vector &Out) const
 Multiplica con sigo mismo (A), un vector [b;B] y el resultado es cargado en Out. Este método es similar al operador *. Más...
 
bool MulComp (double b, const Pds::Matrix &B, Pds::Matrix &Out) const
 Multiplica con sigo mismo (A), un vector [b;B] y el resultado es cargado en Out. Este método es similar al operador *. Más...
 
Pds::Matrix CompMul (double b, const Pds::Matrix &B) const
 Multiplica con sigo mismo (A), previa composición, una matriz B y el resultado es cargado en C. El valor b es colocado en toda una columna. Más...
 
Pds::Matrix MulT (const Pds::Matrix &B) const
 Multiplica con sigo mismo (A), la transpuesta de una matriz B y el resultado es cargado en C. Este método es similar al operador *. Más...
 
Pds::Matrix TMul (const Pds::Matrix &B) const
 Multiplica con la transpuesta de sí mismo (A^T), la matriz B y el resultado es cargado en C. Este método es similar al operador *. Más...
 
Pds::Matrix Add (double b) const
 [Elemento a elemento] Suma con sigo mismo (A), una valor b y el resultado es cargado en C. Este método es similar al operador + Más...
 
Pds::Matrix Add (const Pds::Matrix &B) const
 [Elemento a elemento] Suma con sigo mismo (A), una matriz B y el resultado es cargado en C. Este metodo es similar al operador + Más...
 
Pds::Matrix Sub (double b) const
 [Elemento a elemento] Resta con sigo mismo (A), una valor b y el resultado es cargado en C. Este método es similar al operador - Más...
 
Pds::Matrix Sub (const Pds::Matrix &B) const
 [Elemento a elemento] Resta con sigo mismo (A), una matriz B y el resultado es cargado en C. Este método es similar al operador - Más...
 
Pds::Matrix AddRowMatrix (const Pds::Matrix &B) const
 Suma con sigo mismo (A), una matriz B linea y el resultado es cargado en C. La unica linea de B es sumada a cada linea de A. Más...
 
Pds::Matrix SubRowMatrix (const Pds::Matrix &B) const
 Resta con sigo mismo (A), una matriz B linea y el resultado es cargado en C. La unica linea de B es restada a cada linea de A. Más...
 
Pds::Matrix operator/ (double b) const
 [Elemento a elemento] Divide con sigo mismo (A), un valor b y el resultado es cargado en C. Este operador es similar al método Div() Más...
 
Pds::Matrix operator/ (const Pds::Matrix &B) const
 [Elemento a elemento] Divide con sigo mismo (A), elemento a elemento, una matriz B y el resultado es cargado en C. Este método es similar al método .Div() Más...
 
Pds::Matrix Div (double b) const
 [Elemento a elemento] Divide con sigo mismo (A), un valor b y el resultado es cargado en C. Este método es similar al operador / Más...
 
Pds::Matrix Div (const Pds::Matrix &B) const
 [Elemento a elemento] Divide con sigo mismo (A), elemento a elemento, una matriz B y el resultado es cargado en C. Este método es similar al operador / Más...
 
Pds::Matrix DivRowMatrix (const Pds::Matrix &B) const
 [Elemento a elemento] Divide con sigo mismo (A), una matriz B linea y el resultado es cargado en C. La unica linea de B es dividida a cada linea de A. Más...
 
Pds::Matrix DivBelow (double b) const
 [Elemento a elemento] Divide con sigo mismo (A), un valor b y el resultado es cargado en C. Este método es similar al operador / Más...
 
Pds::Matrix operator& (const Pds::Matrix &B) const
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz B y el resultado es cargado en C. Este método es similar al método .Product() Más...
 
Pds::Matrix Product (const Pds::Matrix &B) const
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz B y el resultado es cargado en C. Este método es similar al operador & Más...
 
Pds::Matrix Product (double(*func)(double), const Pds::Matrix &B) const
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz func(B) y el resultado es cargado en C. Este método es similar al operador & Más...
 
Pds::Matrix Pow (const Pds::Matrix &B) const
 [Elemento a elemento]Potencia asi mismo (A), elemento a elemento, con una matriz B y el resultado es cargado en C. Este método es similar al operador Más...
 
Pds::Matrix Pow (double val) const
 [Elemento a elemento] Potencia asi mismo (A), elemento a elemento, con un valor val y el resultado es cargado en C. Este método es similar al operador Más...
 
Pds::Matrix GreaterThan (double b) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es mayor que un valor b y el resultado es cargado en C. Este método es similar al operador > Más...
 
Pds::Matrix Geq (double b) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es mayor o igual que un valor b y el resultado es cargado en C. Este método es similar al operador >= Más...
 
Pds::Matrix Geq (Pds::Matrix B) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es mayor que un valor (B) y el resultado es cargado en C. Este método es similar al operador >= Más...
 
Pds::Matrix Leq (double b) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es menor que un valor b y el resultado es cargado en C. Este método es similar al operador <= Más...
 
Pds::Matrix Leq (const Pds::Matrix &B) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es menor que un valor B y el resultado es cargado en C. Este método es similar al operador <= Más...
 
Pds::Matrix EqualTo (double b) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es identico a un valor b y el resultado es cargado en C. Este método es similar al operador == Más...
 
Pds::Matrix EqualTo (const Pds::Matrix &B) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) es identico a un valor B y el resultado es cargado en C. Este método es similar al operador == Más...
 
Pds::Matrix NotEqualTo (double b) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) no es identico a un valor b y el resultado es cargado en C. Este método es similar al operador != Más...
 
Pds::Matrix NotEqualTo (const Pds::Matrix &B) const
 [Elemento a elemento] Calcula con sigo mismo (A), si (A) no es identico a un valor B y el resultado es cargado en C. Este método es similar al operador != Más...
 
Pds::Matrix EqualToInf (void) const
 Verifica si la matriz tiene elementos con valores infinitos. Más...
 
Pds::Matrix EqualToNan (void) const
 Verifica si la matriz tiene elementos con valores NAN (Not A Number). Más...
 
Pds::Matrix EqualToFinite (void) const
 Verifica si la matriz tiene elementos con valores finitos (no +inf, no -inf y no NAN). Más...
 
Pds::Matrix Xor (const Pds::Matrix &B, double Umbral=0.5) const
 [Elemento a elemento] Xor con sigo mismo (A), una matriz B y el resultado es cargado en C. Más...
 
Pds::Matrix And (const Pds::Matrix &B, double Umbral=0.5) const
 [Elemento a elemento] And con sigo mismo (A), una matriz B y el resultado es cargado en C. Más...
 
Pds::Matrix Or (const Pds::Matrix &B, double Umbral=0.5) const
 [Elemento a elemento] Or con sigo mismo (A), una matriz B y el resultado es cargado en C. Más...
 
Operadores binarios acumuladores y sus métodos equivalentes con Pds::Matrix.

Descripción de algunos operadores habilitados a trabajar con Pds::Matrix.

Pds::Matrixoperator-= (double b)
 Resta y acumula en si mismo (A), un valor b. Este operador es similar al método SubAssig() Más...
 
Pds::Matrixoperator-= (const Pds::Matrix &B)
 Resta y acumula en si mismo (A), una matriz B. Este operador es similar al método SubAssig() Más...
 
bool SubAssig (double b)
 Resta y acumula en si mismo (A), un valor b. Este es similar al operador -=. Más...
 
bool SubAssig (const Pds::Matrix &B)
 Resta y acumula en si mismo (A), una matriz B. Este es similar al operador -=. Más...
 
bool SubAssig (double beta, const Pds::Matrix &B)
 Resta y acumula en si mismo (A), una matriz B. Este es similar al operador -=. Más...
 
Pds::Matrixoperator+= (double b)
 Suma y acumula en si mismo (A), un valor b. Este operador es similar al método AddAssig() Más...
 
Pds::Matrixoperator+= (const Pds::Matrix &B)
 Suma y acumula en si mismo (A), una matriz B. Este operador es similar al método AddAssig() Más...
 
bool AddAssig (double b)
 Suma y acumula en si mismo (A), un valor b. Este es similar al perador +=. Más...
 
bool AddAssig (const Pds::Matrix &B)
 Suma y acumula en si mismo (A), una matriz B. Este es similar al perador +=. Más...
 
bool AddAssig (double alpha, const Pds::Matrix &B)
 Suma y acumula en si mismo (A), una matriz B. Más...
 
bool AddAssig (double alpha, double beta, const Pds::Matrix &B)
 Suma y acumula en si mismo (A), una matriz B. Más...
 
bool AddAssig (double alpha, const Pds::Matrix &B, double beta, const Pds::Matrix &C)
 Suma y acumula en si mismo (A), una matriz B. Más...
 
bool AddAssigColMatrix (const Pds::Matrix &B)
 Suma y acumula en si mismo (A) e en cada columna, una matriz columna B. Más...
 
bool AddAssigAt (unsigned int lin, unsigned int col, const Pds::Matrix &B)
 Suma y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección. Más...
 
bool AddAssigAt (unsigned int lin, unsigned int col, double b)
 Suma y acumula en si mismo (A), un valor b en un punto (lin,col) Más...
 
void AddRawAssigAt (unsigned int lin, unsigned int col, double b)
 Suma y acumula en si mismo (A), un valor b en un punto (lin,col) Más...
 
bool XorAssig (const Pds::Matrix &B, double Umbral=0.5)
 Xor y acumula en si mismo (A), una matriz B. Más...
 
bool XorAssigAt (unsigned int lin, unsigned int col, const Pds::Matrix &B, double Umbral=0.5)
 Xor y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección. Más...
 
bool OrAssigAt (unsigned int lin, unsigned int col, const Pds::Matrix &B, double Umbral=0.5)
 Or y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección. Más...
 
bool AndAssigAt (unsigned int lin, unsigned int col, const Pds::Matrix &B, double Umbral=0.5)
 And y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección. Más...
 
bool XorAssigVectorAtCol (unsigned int col, const Pds::Vector &B, double Umbral=0.5)
 Xor y acumula en si mismo (A), una matriz B desde un punto (0,col) haciendo una intersección. Más...
 
bool ProductAssig (double b)
 Multiplica con sigo mismo (A), un valor b y el resultado es cargado en A. Más...
 
bool ProductAssig (const Pds::Matrix &B)
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz B y el resultado es cargado en A. Más...
 
bool ProductAssig (double(*func)(double), const Pds::Matrix &B)
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz func(B) y el resultado es cargado en A. Más...
 
bool ProductAssigMinus (double b, const Pds::Matrix &B)
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz (b-B) y el resultado es cargado en A. Más...
 
bool ProductAssigMinus (const Pds::Matrix &B, double b)
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz (B-b) y el resultado es cargado en A. Más...
 
bool ProductAssigPlus (double b, const Pds::Matrix &B)
 [Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz (b+B) y el resultado es cargado en A. Más...
 
Pds::Matrixoperator*= (double b)
 Multiplica y acumula en si mismo (A), un valor b. Este operador es similar al método MulAssig() Más...
 
Pds::Matrixoperator*= (const Pds::Matrix &B)
 Multiplica y acumula en si mismo (A), una matriz B. Este operador es similar al método MulAssig() Más...
 
bool MulAssig (double b)
 Multiplica y acumula en si mismo (A), un valor b. Este es similar al operador *=. Más...
 
bool MulAssig (const Pds::Matrix &B)
 Multiplica y acumula en si mismo (A), una matriz B. Este es similar al operador *=. Más...
 
Pds::Matrixoperator/= (const Pds::Matrix &B)
 [Elemento a elemento] Divide y acumula en si mismo (A), una matriz B. Este operador es similar al método DivAssig() Más...
 
bool DivAssig (const Pds::Matrix &B)
 Divide y acumula en si mismo (A), una matriz B. Este es similar al operador /=. Más...
 
bool DivBelowAssig (double b)
 [Elemento a elemento] Divide y acumula en si mismo (A), un valor b. Más...
 
bool Copy (double val)
 Copia en si mismo (A), el valor val. Este método es similar a usar el operador = . No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos de 1x1 es reservado. Más...
 
template<class Datum >
bool Copy (const Pds::Array< Datum > &B)
 Copia en si mismo (A), el contenido de una Array B. Este método es similar a usar el operador = . No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos es reservado. Más...
 
Métodos para calculo de kmeans y centroides con Pds::Matrix

Descripción de algunos operadores habilitados a trabajar con Pds::Matrix.

std::vector< unsigned int > KNearest (unsigned int K, const Pds::Vector &V, std::vector< double > &D2) const
 Calcula que linea $m$ de $\mathbf{C}\in \mathbb{R}^{M\times N}$ es mas cercana al vector $\mathbf{v}\in \mathbb{R}^{N}$. Más...
 
std::vector< unsigned int > KNearest (unsigned int K, const Pds::Vector &V) const
 Calcula que linea $m$ de $\mathbf{C}\in \mathbb{R}^{M\times N}$ es mas cercana al vector $\mathbf{v}\in \mathbb{R}^{N}$. Más...
 
Pds::Array< unsigned int > IdInMultipleMse (const Pds::Matrix &X) const
 Calcula que linea $m$ de $\mathbf{C}$ es mas cercana a cada linea $l$ de $\mathbf{X}\in \mathbb{R}^{L\times N}$. Más...
 
Pds::Array< unsigned int > IdInMultipleMse (const std::vector< Pds::Matrix > &Block) const
 Calcula que linea $m$ de $\mathbf{C}$ es mas cercana a cada muestra $0 \leq (lin,col)< (Nlin, Ncol)$ en el bloque $\mathbf{Block}\in \mathbb{R}^{N\times Nlin\times Ncol}$. Más...
 

Métodos públicos estáticos

Métodos Static con Vectores VectorBlock.

Herramientas genéricas que pueden ser usadas desde Pds::Vector

static bool IsVectorBlock (const std::vector< Pds::Vector > &Block)
 Verifica que el bloque (std::vector<Pds::Vector>) sea un vector no vacío de matrices no nulas y similares. Es decir un Hiperrectángulo. Más...
 
static Pds::Vector FlattenVectorBlock (const std::vector< Pds::Vector > &Block)
 Convierte a Pds::Vector un VectorBlock. Más...
 
static std::vector< Pds::VectorRandNVectorBlock (unsigned int N, unsigned int Sz)
 Crea un bloque (std::vector<Pds::Vector>) con matrices no nulas y similares inicializadas con Pds::RandN(). Más...
 
static std::vector< Pds::VectorMaxPoolingVectorBlock (const std::vector< Pds::Vector > &A, unsigned int LinPool)
 Aplica max pooling a cada matriz $\mathbf{A}[n]$
de $L_\mathbf{An}$ lineas y $C_\mathbf{An}$ columnas. Más...
 
Static export import.
static bool ExportVectorBlockXmlToStream (std::ofstream &myfile, const std::vector< Pds::Vector > &Block)
 Retorna un std::string en formato Xml con el contenido del VectorBlock. Más...
 
static std::string ExportVectorBlockXmlToString (const std::vector< Pds::Vector > &Block)
 Retorna un std::string en formato Xml con el contenido del VectorBlock. Más...
 
static std::vector< Pds::VectorImportVectorBlockXmlFromString (const std::string &str)
 Carga el contenido de una std::vector<Pds::Vector> desde un std::string en formato Xml. Más...
 
Métodos Static con Vectores TensorVectorBlock.

Herramientas genéricas que pueden ser usadas desde Pds::Vector

static bool IsTensorVectorBlock (const std::vector< std::vector< Pds::Vector > > &Tensor)
 Verifica que el tensor (std::vector<std::vector<Pds::Vector>>) sea un vector de vectores no vacíos de matrices no nulas y similares. Es decir un Hiperrectángulo. Más...
 
static std::vector< std::vector< Pds::Vector > > RandNTensorVectorBlock (unsigned int L, unsigned int N, unsigned int Sz)
 Crea un tensor (std::vector<std::vector<Pds::Vector>>) con matrices no nulas y similares inicializadas con Pds::RandN(). Más...
 
static std::string ExportTensorVectorBlockXmlToString (const std::vector< std::vector< Pds::Vector > > &Block)
 Retorna un std::string en formato Xml con el contenido del TensorVectorBlock. Más...
 
static std::vector< std::vector< Pds::Vector > > ImportTensorVectorBlockXmlFromString (const std::string &str)
 Carga el contenido de una std::vector<std::vector<Pds::Vector>> desde un std::string en formato Xml. Más...
 
static bool ExportTensorVectorBlockXmlToStream (std::ofstream &myfile, const std::vector< std::vector< Pds::Vector > > &Block)
 Escribe en un std::ofstream en formato Xml con el contenido del TensorVectorBlock. Más...
 
Métodos Static con Matrices SampleBlock.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

static bool ExportBmpFile (const Pds::Matrix &R, const Pds::Matrix &G, const Pds::Matrix &B, const std::string &bmpfilename)
 Escribe en una matriz en un archivo binario en formato BMP. Losdatos deben ir de 0 a 255, valores superiores o inferiores serán truncados. Más...
 
static bool IsSampleBlock (const std::vector< Pds::Matrix > &Block)
 Verifica que el bloque (std::vector<Pds::Matrix>) sea un vector no vacío de matrices no nulas y similares. Es decir un Hiperrectángulo. Más...
 
static Pds::Vector FlattenSampleBlock (const std::vector< Pds::Matrix > &Block)
 Convierte a Pds::vector un SampleBlock. Más...
 
static std::vector< Pds::MatrixRandNSampleBlock (unsigned int N, const Pds::Size &Sz)
 Crea un bloque (std::vector<Pds::Matrix>) con matrices no nulas y similares inicializadas con Pds::RandN(). Más...
 
static std::vector< Pds::MatrixZerosSampleBlock (unsigned int N, const Pds::Size &Sz)
 Crea un bloque (std::vector<Pds::Matrix>) con matrices no nulas y similares inicializadas con Pds::Zeros(). Más...
 
static std::vector< Pds::MatrixMaxPoolingSampleBlock (const std::vector< Pds::Matrix > &A, unsigned int LinPool, unsigned int ColPool)
 Aplica max pooling a cada matriz $\mathbf{A}[n]$
de $L_\mathbf{An}$ lineas y $C_\mathbf{An}$ columnas. Más...
 
static Pds::Matrix MeanSampleBlock (const std::vector< Pds::Matrix > &Block)
 Calcula A,la matriz media de un conjunto de N matrizes agrupadas en un std::vector. Más...
 
static Pds::Matrix GetSamples (const std::vector< Pds::Matrix > &Block)
 Convierte las muestras de un bloque (std::vector<Pds::Matrix>) de N matrices (Pds::Matrix) de L elementos, en una matriz Pds::Matrix(L,N). Lee los datos de la columna actual y pasa a la siguiente, desde la columna 0. Más...
 
static Pds::Matrix GetSamples (const std::vector< Pds::Matrix > &Block, const std::vector< unsigned int > Id)
 Convierte M muestras de un bloque (std::vector<Pds::Matrix>) de N matrices (Pds::Matrix) de L elementos, en una matriz Pds::Matrix(M,N). Más...
 
static bool GetSampleRaw (const std::vector< Pds::Matrix > &Block, unsigned int lin, unsigned int col, Pds::Vector &x)
 Extrae una muestra de un bloque (std::vector<Pds::Matrix>) de N matrices (Pds::Matrix) de L elementos, a un vector Pds::Vector(N). Más...
 
static bool GetSampleRaw (const std::vector< Pds::Matrix > &Block, unsigned int id, Pds::Vector &x)
 Extrae una muestra de un bloque (std::vector<Pds::Matrix>) de N matrices (Pds::Matrix) de L elementos, a un vector Pds::Vector(N). Más...
 
static std::vector< Pds::MatrixImportBmpFile (const std::string &bmpfilename)
 Lee matrices de un archivo binario en formato BMP. Más...
 
static Pds::Matrix ImportBmpFileAsGray (const std::string &bmpfilename)
 Retorna una matriz en escala de grises, de 0 a 255. Más...
 
static bool ExportAsGif (const std::vector< Pds::Matrix > &Block, const std::string &filename, unsigned int delay=100, const unsigned char colormap[256][3]=Pds::Colormap::Gray)
 Salva el bloque (std::vector<Pds::Matrix>) en una imagen GIF. Más...
 
static std::string ExportSampleBlockXmlToString (const std::vector< Pds::Matrix > &Block)
 Retorna un std::string en formato Xml con el contenido del SampleBlock. Más...
 
static std::vector< Pds::MatrixImportSampleBlockXmlFromString (const std::string &str)
 Carga el contenido de una std::vector<Pds::Matrix> desde un std::string en formato Xml. Más...
 
static bool ExportSampleBlockXmlToStream (std::ofstream &myfile, const std::vector< Pds::Matrix > &Block)
 Retorna un std::string en formato Xml con el contenido del SampleBlock. Más...
 
Métodos Static con procesamiento de 3 matrices.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

static bool FunctionCh3ToCh3 (void(*func)(double a1, double a2, double a3, double &b1, double &b2, double &b3), const Pds::Matrix &A1, const Pds::Matrix &A2, const Pds::Matrix &A3, Pds::Matrix &B1, Pds::Matrix &B2, Pds::Matrix &B3)
 Convierte elemento a elemento 3 matrices a 3 matrices. Más...
 
Métodos Static con Matrices BatchBlock.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

static bool IsBatchBlock (const std::vector< std::vector< Pds::Matrix > > &Tensor)
 Verifica que el tensor (std::vector<std::vector<Pds::Matrix>>) sea un vector de vectores no vacíos de matrices no nulas y similares. Es decir un Hiperrectángulo. Más...
 
static std::vector< std::vector< Pds::Matrix > > RandNBatchBlock (unsigned int L, unsigned int N, const Pds::Size &Sz)
 Crea un tensor (std::vector<std::vector<Pds::Matrix>>) con matrices no nulas y similares inicializadas con Pds::RandN(). Más...
 
static std::vector< std::vector< Pds::Matrix > > ZerosBatchBlock (unsigned int L, unsigned int N, const Pds::Size &Sz)
 Crea un tensor (std::vector<std::vector<Pds::Matrix>>) con matrices no nulas y similares inicializadas con Pds::Zeros(). Más...
 
static std::string ExportBatchBlockXmlToString (const std::vector< std::vector< Pds::Matrix > > &Block)
 Retorna un std::string en formato Xml con el contenido del BatchBlock. Más...
 
static std::vector< std::vector< Pds::Matrix > > ImportBatchBlockXmlFromString (const std::string &str)
 Carga el contenido de una std::vector<std::vector<Pds::Matrix>> desde un std::string en formato Xml. Más...
 
static bool ExportBatchBlockXmlToStream (std::ofstream &myfile, const std::vector< std::vector< Pds::Matrix > > &Block)
 Escribe en un std::ofstream en formato Xml con el contenido del BatchBlock. Más...
 
Métodos Static con Matrices extras.

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

static Pds::Matrix FromString (const std::string &str)
 Convierte un sdt::string a una Matriz de Nlin lineas y Ncol columnas. Más...
 
Métodos Static con arrays

Herramientas genéricas que pueden ser usadas desde Pds::Matrix

static double ** ArrayAllocate (double(*func)(double), const Pds::Matrix &A)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A). Más...
 
static double ** ArrayAllocate (double(*func)(double, double), const Pds::Matrix &A, double var)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A,var). Más...
 
static double ** ArrayAllocate (double(*func)(double, double), const Pds::Matrix &A, const Pds::Matrix &B)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A,B). Los tamaño de A y B son similares. Más...
 
static double ** ArrayAllocate (double(*func)(double, double, double), const Pds::Matrix &A, const Pds::Matrix &B, double var)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A,B,var). Los tamaño de A y B son similares. Más...
 
static double ** ArrayAllocate (double(*func)(double, double, double), const Pds::Matrix &A, const Pds::Matrix &B, const Pds::Matrix &C)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A,B,C). Los tamaño de A, B y C son similares. Más...
 
static double ** ArrayAllocate (double(*func)(double, double, double, double), const Pds::Matrix &A, const Pds::Matrix &B, const Pds::Matrix &C, double var)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A,B,C,var). Los tamaño de A, B y C son similares. Más...
 
static double ** ArrayAllocate (double(*func)(double, double, double, double), const Pds::Matrix &A, const Pds::Matrix &B, const Pds::Matrix &C, const Pds::Matrix &D)
 crea dinámicamente un arreglo de A.Nlin() lineas y A.Ncol() columnas, con los datos copiados de aplicar func(A,B,C,D). Los tamaño de A, B, C y D son similares. Más...
 

Métodos privados

void SortWith_merge (Pds::Matrix &A, unsigned int init, unsigned int mid, unsigned int end, double **tmp1, double **tmp2)
 
void SortWith_mergesort (Pds::Matrix &A, unsigned int init, unsigned int end, double **tmp1, double **tmp2)
 
void SortWith_merge (unsigned int init, unsigned int mid, unsigned int end, double **tmp1)
 
void SortWith_mergesort (unsigned int init, unsigned int end, double **tmp1)
 
void SortWith_mergeid (unsigned int init, unsigned int mid, unsigned int end, double **tmp1, std::vector< unsigned int > &id, std::vector< unsigned int > &idtmp)
 
void SortWith_mergesortid (unsigned int init, unsigned int end, double **tmp1, std::vector< unsigned int > &id, std::vector< unsigned int > &idtmp)
 

Atributos privados

double ** array
 
unsigned int nlin
 
unsigned int ncol
 

Operadores binarios.

Pds::Vector Conv (const Pds::Vector &B, Pds::Ra::Padding Padding=Pds::Ra::Full) const
 Calcula la convolución entre A y B. Más...
 
Pds::Vector Conv1D (const Pds::Vector &B, unsigned int Stride=1, Pds::Ra::Padding Padding=Pds::Ra::Full) const
 Calcula la convolución entre A y B. Más...
 
Pds::Vector XCorr (const Pds::Vector &B, bool Same=false) const
 Calcula la correlacion cruzada entre A y B. Más...
 
Pds::Matrix MulTComp (double b, const Pds::Vector &B) const
 Multiplica con sigo mismo (A), la transpuesta de un vector [b;B] y el resultado es cargado en C.
Más...
 
static Pds::Size Conv1DOutputSize (unsigned int Anlin, unsigned int Bnlin, unsigned int Stride, Pds::Ra::Padding Padding)
 Calcula el tamaño de la matriz resultado de la convolucion de A y B. Más...
 

Métodos Digital Signal Processing

Herramientas genéricas

Pds::Vector HistogramIntNorm (int min=0, int max=255) const
 Retorna un vector con el histograma de $L=max-min+1$ elementos, desde min hasta max (valores enteros). Elementos con valores round(val) menores a min o mayores a max no son computados en el histograma. Más...
 
Pds::Vector Histogram (double min, double max, unsigned int L) const
 Retorna un vector con um histograma de $L$ elementos espaciados $\delta$. Elementos con valores menores a $min-\frac{\delta}{2}$ o mayores a $max+\frac{\delta}{2}$ no son computados en el histograma. Más...
 
Pds::Vector Histogram (unsigned int L) const
 Retorna un vector con um histograma de $L$ elementos espaciados $\delta$. Elementos con valores menores a $V.Min()$ o mayores a $V.Max()$ no son computados en el histograma. Más...
 
double Corr (const Pds::Matrix &B) const
 Calcula la correlación de Pearson con la matriz. Más...
 
double Cov (const Pds::Matrix &B) const
 Calcula la covarianza con la matriz. Más...
 
Pds::Matrix CovMatrix (void) const
 Calcula la matriz de covarianza de la matriz. Más...
 
Pds::Matrix CovMatrix (Pds::Matrix &Mean) const
 Calcula la matriz de covarianza de la matriz. Más...
 
Pds::Matrix XCorr (const Pds::Matrix &B, bool Same=false) const
 Calcula la correlacion cruzada entre A y B. Más...
 
Pds::Matrix Conv (const Pds::Matrix &B, Pds::Ra::Padding Padding=Pds::Ra::Full) const
 Calcula la convolución entre A y B. Más...
 
Pds::Matrix Conv2D (const Pds::Matrix &B, const std::vector< unsigned int > &Strides={1, 1}, Pds::Ra::Padding Padding=Pds::Ra::Full) const
 Calcula la convolución entre A y B. Más...
 
bool Conv2D (const Pds::Matrix &B, Pds::Matrix &C, const std::vector< unsigned int > &Strides={1, 1}, Pds::Ra::Padding Padding=Pds::Ra::Full) const
 Calcula la convolución entre A y B. Más...
 
Pds::Matrix MaxPooling (unsigned int LinPool, unsigned int ColPool) const
 Aplica max pooling de la matriz $\mathbf{A}$ de $L_\mathbf{A}$ lineas y $C_\mathbf{A}$ columnas. Más...
 
Pds::Matrix FilterMean (unsigned int r) const
 Procesa la matriz A usando un filtro mean de radio r. Más...
 
Pds::Matrix FilterMean3 (void) const
 Procesa la matriz A usando un filtro mean de radio 1. Más...
 
Pds::Matrix Resize (double factor) const
 Retorna una matriz B (size: NlinB,NcolB) resultado de aplicar un subsampling de la matriz A (size: Nlin,Ncol) por un factor. Más...
 
static Pds::Size Conv2DOutputSize (const Pds::Size &A, const Pds::Size &B, const std::vector< unsigned int > &Strides, Pds::Ra::Padding Padding)
 Calcula el tamaño de la matriz resultado de la convolucion de A y B. Más...
 

Descripción detallada

La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna. Para usar incluir Pds/Vector.

Autor
Fernando Pujaico Rivera
Ejemplos
example_binarytreenode.cpp, example_circle_create.cpp, example_coin_create.cpp, example_csv_create.cpp, example_exponential_create.cpp, example_funcmatrix_merge.cpp, example_funcmatrixsampleblock_mixsampleblock.cpp, example_funcvector_space.cpp, example_mathmatrix_crossentropy.cpp, example_mathmatrix_kldivergence.cpp, example_mathmatrix_plog2p.cpp, example_matrix_algebra.cpp, example_matrix_algebra3.cpp, example_matrix_algebra4.cpp, example_matrix_algebra_eig.cpp, example_matrix_algebra_eig2.cpp, example_matrix_assignment_bin.cpp, example_matrix_dsp2.cpp, example_matrix_dsp_hist.cpp, example_matrix_getset_extras.cpp, example_matrix_knearest.cpp, example_matrix_operaterows.cpp, example_matrix_operators_binary.cpp, example_matrix_operators_binary2.cpp, example_matrix_sampleblock.cpp, example_matrixfunc.cpp, example_matrixmath_dsp.cpp, example_matrixmath_erf.cpp, example_matrixmath_information.cpp, example_matrixmath_pseudohb.cpp, example_matrixmath_telecom.cpp, example_matrixmath_tsallis.cpp, example_normal_create.cpp, example_octave_pairwisescatterxy.cpp, example_octave_show.cpp, example_optadam_create.cpp, example_ra_indices.cpp, example_rayleigh_create.cpp, example_regression_fitting.cpp, example_triangle_evalsamples.cpp, example_triangle_getsamples.cpp, example_uniform_create.cpp, example_vector_create.cpp, example_vector_dsp.cpp, example_vector_dsp_conv.cpp, example_vector_dsp_conv1d.cpp, example_vector_export_json.cpp, example_vector_json.cpp, example_vector_nearestk.cpp, example_vector_operator_unit.cpp, example_vector_poly.cpp, example_vector_sorting.cpp y example_vectorfunc.cpp.

Definición en la línea 79 del archivo Vector.hpp.

Documentación de las funciones miembro

◆ SortWith_merge() [1/2]

void Pds::Vector::SortWith_merge ( Pds::Matrix A,
unsigned int  init,
unsigned int  mid,
unsigned int  end,
double **  tmp1,
double **  tmp2 
)
private

◆ SortWith_mergesort() [1/2]

void Pds::Vector::SortWith_mergesort ( Pds::Matrix A,
unsigned int  init,
unsigned int  end,
double **  tmp1,
double **  tmp2 
)
private

◆ SortWith_merge() [2/2]

void Pds::Vector::SortWith_merge ( unsigned int  init,
unsigned int  mid,
unsigned int  end,
double **  tmp1 
)
private

◆ SortWith_mergesort() [2/2]

void Pds::Vector::SortWith_mergesort ( unsigned int  init,
unsigned int  end,
double **  tmp1 
)
private

◆ SortWith_mergeid()

void Pds::Vector::SortWith_mergeid ( unsigned int  init,
unsigned int  mid,
unsigned int  end,
double **  tmp1,
std::vector< unsigned int > &  id,
std::vector< unsigned int > &  idtmp 
)
private

◆ SortWith_mergesortid()

void Pds::Vector::SortWith_mergesortid ( unsigned int  init,
unsigned int  end,
double **  tmp1,
std::vector< unsigned int > &  id,
std::vector< unsigned int > &  idtmp 
)
private

Documentación de los campos

◆ array

double** Pds::Matrix::array
privateinherited

Un arreglo de Nlin lineas y Ncol elementos por linea.

Definición en la línea 99 del archivo Matrix.hpp.

Referenciado por AddRawAssigAt(), GetRaw(), operator[]() y SetRaw().

◆ nlin

unsigned int Pds::Matrix::nlin
privateinherited

Número de lineas.

Definición en la línea 101 del archivo Matrix.hpp.

◆ ncol

unsigned int Pds::Matrix::ncol
privateinherited

Número de columnas.

Definición en la línea 103 del archivo Matrix.hpp.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed