微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

连接不同大小的 ndarrays

如何解决连接不同大小的 ndarrays

简单的数据结构问题,但我找不到正确的 python 语法。给定 numpy 数组(在我的实际使用中,使用 np.loadtxt 从文本文件中读取),例如

A=[[1,2],[3,4]]
B=[[5,6],[7,8],[9,10]]
C=[[11,12],[13,14],[15,10]]

即,2D,但在一维中所有不同的长度。如何将这些组合成一个 3D 数组,使得 combinedArrays[0] 返回 A,或 combinedArrays[:,0] 返回所有第一行等?

我尝试过 np.appendnp.stacknp.concatenate,但这些都没有奏效。我可以用零来扩展较小的矩阵,并且只是顶部填充,但是这样会无缘无故地携带很多额外的零。

解决方法

我强烈建议您使用 tensorflow.ragged.constant()

您可以使用以下代码创建一个:

import tensorflow as tf
t = [A,B,C]
digits = tf.ragged.constant(t)

然后,您不仅可以按照您想要的方式对其进行切片,还可以使用 tensorflow 库中存在的其他方法,例如使用 .numpy() 等将其转换为 numpy 数组

有关更多信息,请参阅:Link

,
$follow = $this->user->followers()->attach(auth()->user()->id);

numpy 数组的 numpy 数组怎么样:

import numpy as np

A=np.array([[1,2],[3,4]])
B=np.array([[5,6],[7,8],[9,10]])
C=np.array([[11,12],[13,14],[15,10]])

数组列表怎么样:

as_array = np.array([A,C])
print(as_array)
[array([[1,4]]) array([[ 5,[ 7,[ 9,10]]) array([[11,10]])]

你也可以使用字典。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。