python - 在一个矩阵中使用 np.vstack 堆叠列表项
问题描述
我对 Python 很陌生,试图解决以下问题:想象一下有以下 numpy 数组(空数组或 nx 2 数组):
a = np.array([])
b = np.array([1,2])
c = np.array([[5,6],[7,8]])
d = np.array([[11,12],[13,14],[15,16]])
现在将它们放在列表 E 中,如下所示:
E = [a,b,c,d]
现在,我希望将项目堆叠在 amx 2 矩阵中,我尝试使用:
F = np.vstack(E)
但这给了我一个错误,因为空数组的维度问题。我希望输出看起来像这样:
output = [[1 2]
[5 6]
[7 8]
[11 12]
[13 14]
[15 16]]
解决方案
根据@Karina 的评论,您必须事先删除空数组。Sop 只需更改您声明 E 的方式以包含某种过滤器:
E = [i for i in (a, b, c, d) if len(i) > 0]
推荐阅读
- fortran - 编译时对函数错误的模糊引用
- assembly - 进位标志如何受减法影响
- flutter - 如何在 Flutter 应用程序中手动清除提供程序的当前状态?
- python - 具有多字段过滤的 Django 搜索栏实现
- javascript - 如何在 JavaScript 中正确比较数字
- retrofit - 带有房间和作业调度器的匕首柄
- javascript - amCharts 5:可以在同一画布上堆叠多个图表并在它们之间共享 xAxis
- java - 暂停和恢复线程的问题
- python - Python - 用多波束数据填充单波束缺失的探测范围
- python - 使用 tf.train.Checkpoint 在 keras 中保存 GAN