我有2个numpy数组,我想在其中将它们转换为矩阵
height = np.array([3,2,4,3,3.5,2,5.5,1])
width = np.array([1.5,1,1.5,1,.5,.5,1,1])
我想使用numpy或pandas将它们转换为2x8矩阵。
谢谢。
答案 0 :(得分:1)
使用np.concatenate((height, width), axis=0)
您还需要reshape
都喜欢,
height = height.reshape(1,-1)
width = width.reshape(1,-1)
result = np.concatenate((height, width), axis=0)
答案 1 :(得分:1)
检查Numpy的asmatrix
方法:
import numpy as np
height = np.array([3,2,4,3,3.5,2,5.5,1])
width = np.array([1.5,1,1.5,1,.5,.5,1,1])
x = np.asmatrix([height, width])
x
结果是
matrix([[ 3. , 2. , 4. , 3. , 3.5, 2. , 5.5, 1. ],
[ 1.5, 1. , 1.5, 1. , 0.5, 0.5, 1. , 1. ]])
答案 2 :(得分:1)
如果您想通过垂直堆叠二维数组来创建二维数组,也可以使用numpy.vstack
:
height = np.array([3,2,4,3,3.5,2,5.5,1])
width = np.array([1.5,1,1.5,1,.5,.5,1,1])
results = np.vstack((height, width))
答案 3 :(得分:-1)
pandas.DataFrame
自从您提到pandas
以来,您只需定义一个pandas.DataFrame
就可以解决您的要求。
当然,根据接下来要处理的矩阵,选择使用numpy
或pandas
。
import pandas as pd
my_dataframe = pd.DataFrame([height, width])
import pandas as pd
my_dataframe = pd.DataFrame({
"height": np.array([3,2,4,3,3.5,2,5.5,1]),
"width": np.array([1.5,1,1.5,1,.5,.5,1,1])
})