相关疑难解决方法(0)

Numpy如何迭代数组列?

假设我有和mxn数组.我想将此数组的每一列传递给一个函数,以对整个列执行某些操作.如何迭代数组的列?

例如,我有一个4 x 3阵列

1  99 2
2  14 5
3  12 7
4  43 1

for column in array:
  some_function(column)
Run Code Online (Sandbox Code Playgroud)

其中列在第一次迭代中为"1,2,3,4",第二次为"99,14,12,43",第三次为"2,5,7,1".

python loops numpy

93
推荐指数
5
解决办法
10万
查看次数

只获取numpy数组中每一行的特定列

可能重复:
numpy:按列访问数组

我有一个numpy数组(numpy导入为np)

gona = np.array([[ 1,  2,  3],
       [ 4,  5,  6],
       [ 7,  8,  9],
       [10, 11, 12]])
Run Code Online (Sandbox Code Playgroud)

我可以通过gona [1] [:]得到第1行整列的值.

数组([4,5,6])

但是如果我尝试获取所有行的特定列的所有值(比如我想要每行中第1列的值),我会尝试gona [:] [1].但是我得到的结果和以前一样.

这可能是什么原因?我怎么在numpy做这样的事情?

python numpy python-2.7

16
推荐指数
2
解决办法
8万
查看次数

如何理解外行人的坎坷步伐?

我目前正在经历numpy,并且有一个名为"strides"的numpy主题.我明白它是什么.但它是如何工作的?我没有在网上找到任何有用的信息.任何人都可以让我以外行的方式理解吗?

python numpy scipy stride

13
推荐指数
3
解决办法
2710
查看次数

如何用numpy数组中的值替换一列?

我有这样的数组

import numpy as np

a = np.zeros((2,2), dtype=np.int)
Run Code Online (Sandbox Code Playgroud)

我想用值替换第一列1.我做了以下事情:

a[:][0] = [1, 1] # not working
a[:][0] = [[1], [1]] # not working
Run Code Online (Sandbox Code Playgroud)

相反,当我更换行时,它工作!

a[0][:] = [1, 1] # working
Run Code Online (Sandbox Code Playgroud)

我有一个大数组,所以我不能用值替换值.

python arrays numpy

11
推荐指数
3
解决办法
4万
查看次数

访问结构化数组的 NumPy 数组的一列

我得到了一个多维 numpy 数组,x它看起来像这样:

array([ array([  398.24475098,  -196.1497345 ,  -110.79341125, ..., -1937.22399902,
       -6158.89355469,  1742.84399414], dtype=float32),
       array([   32.27750397,  -171.73371887,  -342.6328125 , ..., -4727.4296875 ,
       -4727.4296875 , -2545.10375977], dtype=float32),
       array([  785.83660889,  -234.88890076,   140.49914551, ..., -7982.19482422,
       -2127.640625  , -1434.77160645], dtype=float32),
       ...,
       array([   181.93313599,   -146.41413879,   -416.02978516, ...,
        -4517.796875  ,  10491.84570312,  -6604.39550781], dtype=float32),
       array([ -1.37602341e+02,   1.71733719e+02,   7.13068867e+00, ...,
         8.60104688e+03,   1.39115127e+04,   3.31622314e+03], dtype=float32),
       array([   453.17272949,    152.49285889,    260.41452026, ...,
        19061.60742188,  11232.8046875 ,   7312.13964844], dtype=float32)], dtype=object)
Run Code Online (Sandbox Code Playgroud)

我正在尝试访问每一列(特别是我正在尝试获取每列的标准偏差)。我找到了这个答案,我试过了,

>>> x[:,0]
Run Code Online (Sandbox Code Playgroud)

但这返回了一个错误:

Traceback (most recent call last): …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy multidimensional-array

5
推荐指数
1
解决办法
1429
查看次数

如何在没有for循环的情况下在2D numpy数组中设置多个列?

我想设置numpy数组的值如下.但我不想用for-loop.有什么好办法吗?

a = range(4)
a[0] = [11,12,13,14,15,16]
a[1] = [21,22,23,24,25,26]
a[2] = [31,32,33,34,35,36]
a[3] = [41,42,43,44,45,46]

a = np.array(a)

changeIndex = [0,2,4]
for i in range(4):
    a[i][changeIndex] = 0

print a
#array([[ 0, 12,  0, 14,  0, 16],
#       [ 0, 22,  0, 24,  0, 26],
#       [ 0, 32,  0, 34,  0, 36],
#       [ 0, 42,  0, 44,  0, 46]])
Run Code Online (Sandbox Code Playgroud)

python indexing for-loop numpy multidimensional-array

1
推荐指数
1
解决办法
4367
查看次数