[英]Dynamic Arrays in Python using numpy
travel_mat1= numpy.array([[23,23,20,24,28,12,17,10],[11,27,17,19,24,18,23,7],
[17,26,22,13,18,29,30,18],[22,21,28,7,18,29,30,18],[27,16,33,36,10,23,26,25],
[31,13,36,14,26,23,20,27],[34,7,33,20,35,17,14,24],[28,13,27,26,37,11,10,18],
[25,17,33,28,34,10,12,15]])
I need to change the size of array dynamically with no loss of actual data in the array. 我需要动态更改数组的大小,而不会丢失数组中的实际数据。 Means, I need to have a virtual dynamic array.
就是说,我需要一个虚拟的动态数组。
The above array Travel_mat1
is a 9X8 matrix. 上面的数组
Travel_mat1
是9X8矩阵。 So if i need a 8X7 size matrix from Travel_mat1, it should look like: 因此,如果我需要Travel_mat1的8X7尺寸矩阵,它应该看起来像:
([[23,23,20,24,28,12,17],[11,27,17,19,24,18,23],[17,26,22,13,18,29,30],
[22,21,28,7,18,29], [27,16,33,36,10,23,26],[31,13,36,14,26,23,20],
[34,7,33,20,35,17,14],[28,13,27,26,37,11,10]]).
Means, I need to reduce a row and a column in this case. 就是说,在这种情况下,我需要减少一行和一列。 How can I do this in python?
如何在python中做到这一点?
You can use numpy.delete
: 您可以使用
numpy.delete
:
>>> numpy.delete(numpy.delete(travel_mat1, 8, 0), 7, 1) array([[23, 23, 20, 24, 28, 12, 17], [11, 27, 17, 19, 24, 18, 23], [17, 26, 22, 13, 18, 29, 30], [22, 21, 28, 7, 18, 29, 30], [27, 16, 33, 36, 10, 23, 26], [31, 13, 36, 14, 26, 23, 20], [34, 7, 33, 20, 35, 17, 14], [28, 13, 27, 26, 37, 11, 10]])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.