python – 没有double for循环展平numpy数组
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 没有double for循环展平numpy数组,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1166字,纯文字阅读大概需要2分钟。
内容图文
![python – 没有double for循环展平numpy数组](/upload/InfoBanner/zyjiaocheng/707/ae6d3b3fedef47bface806ba3e1c33d9.jpg)
我有一个二维矩阵.出于这个例子的目的,让我们说它是一个随机矩阵
>>> a = np.random.randn(5, 7)
>>> a
array([[-0.37279322, 0.28619523, -0.05309901, 0.26010327, 0.1846693 , 0.33112176, 0.75814911],
[ 1.57001151, -0.86831693, -0.20576395, 1.46450855, -0.01631132, 3.02790403, -0.65313017],
[ 0.2362675 , -1.52190536, 0.04687194, 2.01618876, 0.03780218, -0.53041096, -0.30104844],
[-0.5504834 , 1.04286156, 1.12863785, 0.89583492, 0.28607363, 1.42858007, 0.28582572],
[-0.768464 , 0.31952554, 0.81129581, 0.26239668, -0.23242878, -1.01584339, 0.39573906]])
和两个标签向量:
label_y = np.array([23, 984, 123, 9321, 121238])
label_x = np.array([121, 31312, 9123131, 1111, 1231441, 1929313, 192312312361])
我想展平a的元素并输出它们的标签indeces和值.例如:
23,121,-0.37279322
23,31312,0.28619523
23,9123131,-0.05309901
23,1111,0.26010327
23,1231441,0.1846693
23,1929313,0.33112176
23,192312312361,0.75814911
984,121,...
...
是否有一种简单的方法可以在没有循环的情况下进行numpy?
解决方法:
使用np.meshgrid创建对应于X和Y标签的2D网格,然后将它们与2D输入数组a一起堆叠为列,如下所示 –
X,Y = np.meshgrid(label_x,label_y)
out = np.column_stack((Y.ravel(),X.ravel(),a.ravel()))
内容总结
以上是互联网集市为您收集整理的python – 没有double for循环展平numpy数组全部内容,希望文章能够帮你解决python – 没有double for循环展平numpy数组所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。