Quiero convertir una matriz unidimensional en una matriz bidimensional especificando el número de columnas en la matriz 2D. Algo que funcionaría así:
> import numpy as np
> A = np.array([1,2,3,4,5,6])
> B = vec2matrix(A,ncol=2)
> B
array([[1, 2],
[3, 4],
[5, 6]])
¿Numpy tiene una función que funciona como mi función inventada "vec2matrix"? (Entiendo que puede indexar una matriz 1D como una matriz 2D, pero esa no es una opción en el código que tengo, necesito hacer esta conversión).
o consigue uno nuevo
Esto hará que las dimensiones sean +1, lo que equivale a agregar un corchete en el extremo
fuente
Puede usar
flatten()
desde el paquete numpy.Salida:
fuente
AttributeError: module 'numpy' has no attribute 'flatten'
flatten
método: docs.scipy.org/doc/numpy/reference/generated/…Cambie la matriz 1D en matriz 2D sin usar Numpy.
fuente