首页 > 解决方案 > python将一维概率数组转换为二维数组

问题描述

我有一系列概率:

l = [0.9, 0.2, 0.4]

我想让它成为二维数组:

l = [0.9 0.1
     0.2 0.8
     0.4 0.6]

最好的方法是什么?谢谢!

标签: pythonpandaslistnumpynumpy-ndarray

解决方案


One idea is use numpy.hstack:

l = [0.9, 0.2, 0.4]

a = np.array(l)[:, None]

arr = np.hstack((a, 1 - a))
print (arr)
[[0.9 0.1]
 [0.2 0.8]
 [0.4 0.6]]

Or use numpy.c_:

a = np.array(l)
arr = np.c_[a, 1 - a]
print (arr)

推荐阅读