python – 像Matlab一样在numpy中打印子数组
发布时间:2020-12-20 13:37:00 所属栏目:Python 来源:网络整理
导读:如何以与Matlab相同的方式打印numpy中的子阵列?我有一个3乘10000的数组,我想查看前20列.在Matlab中你可以写 a=zeros(3,10000);a(:,1:20) Columns 1 through 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
如何以与Matlab相同的方式打印numpy中的子阵列?我有一个3乘10000的数组,我想查看前20列.在Matlab中你可以写
a=zeros(3,10000); a(:,1:20) Columns 1 through 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 16 through 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 然而在Numpy import numpy as np set_printoptions(threshold=nan) a=np.zeros((3,10000)) print a[:,0:20] [[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]] 如你所见,numpy打印第一行,然后是第二行,然后是第三行.我希望它保持列结构而不是行结构 非常感谢你 PS:例如,一种解决方案就是 print a[:,0:20].T [[ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.]] 但是,屏幕上会消耗比预期更多的空间.如果numpy有这个选项会很棒 解决方法
这会给你想要的吗?
>>> for item in a[:,0:20].T: print 't'.join(map(str,item.tolist())) 或这个? >>> for item in a[:,0:20]: print 't'.join(map(str,item.tolist())) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |