标签: numpy-ndarray

就地更改 Numpy 数组值

假设我们有一个随机生成的 2D 3x2 Numpy 数组a = np.array(3,2),并且我想将第一行和第一列上的元素值(即 a[0,0])更改为 10。如果我这样做

a[0][0] = 10

然后它起作用了,a[0,0] 更改为 10。但是如果我这样做

a[np.arange(1)][0] = 10

那么什么都没有改变。为什么是这样?

我想将选定的行列表(由 Numpy 数组指示)的某些列值更改为其他一些值(例如a[row_indices][:,0] = 10),但它不起作用,因为我传递了指示行的数组(或列表) 。

python numpy numpy-ndarray

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

numba\jit 不允许在 nopython 模式下使用 np argsort

收到此错误消息:

Failed at nopython (nopython frontend)

[1m[1m[1mInvalid usage of Function(<function argsort at 0x0000000002A67840>) with parameters (array(float64, 2d, C), axis=int64)

 * parameterized

In definition 0:
Run Code Online (Sandbox Code Playgroud)


使用此代码时

def rankbids(bids, shifts, groupPeriod, period):
    rowsSize = bids.shape[0];

    finaltable = np.zeros((rowsSize, groupPeriod), dtype=np.float64)
    for i in range(0, period):
        #for 0 to 99
        #CONSTANT 4 UPDATE WHEN NEEDED


        for worker in range(rowsSize):
            shiftNum = int(shifts[worker,i]);

            finaltable[worker, (shiftNum+i*10)] = bids[worker,i];

            if shiftNum == 1:
                finaltable[worker, (shiftNum+i*10)] = bids[worker,i];
                finaltable[worker, (shiftNum+1+i*10)] = bids[worker,i];
                finaltable[worker, (shiftNum+2+i*10)] = bids[worker,i];
            elif …
Run Code Online (Sandbox Code Playgroud)

jit numpy python-3.x numba numpy-ndarray

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

填充 numpy 数组中某个值之间的值

假设我有一个如下所示的数组:

a = np.array([0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0])
Run Code Online (Sandbox Code Playgroud)

我想用 1 填充 1 之间的值。所以这将是所需的输出:

a = np.array([0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0])
Run Code Online (Sandbox Code Playgroud)

我查看了这个答案,得到以下结果:

array([0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
Run Code Online (Sandbox Code Playgroud)

numpy numpy-ndarray

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

如何获取numpy数组值?

我有一个像这样的 numpy 数组:

nparray = array([1.])
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到“1”?

谢谢!

python arrays numpy numpy-ndarray

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

Python 在 numpy 中生成 3D 球体

所以目前我已经制作了一个 numpy 3D 零数组,但我正在尝试创建一堆可以用 numpy 数组表示的不同球体。然而,我对如何实际做到这一点感到困惑。如果我有指定的中心和指定的半径,我将如何创建一个代表球体的 numpy 数组?

python numpy shapes numpy-ndarray

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

Python Pandas:数据帧/系列中元素的比较

我在名为“myDataFrame”的变量中有一个 DataFrame,如下所示:

+---------+-----+-------+-----
| Type    | Count  |  Status |
+---------+-----+-------+-----
| a       |  70    |     0   |
| a       |  70    |     0   |
| b       |  70    |     0   |
| c       |  74    |     3   |
| c       |  74    |     2   |
| c       |  74    |     0   |
+---------+-----+-------+----+
Run Code Online (Sandbox Code Playgroud)

我使用矢量化方法来处理此 DataFrame 中的行,因为我拥有的行数约为 1.16 亿。

所以我写了这样的东西:

myDataFrame['result'] = processDataFrame(myDataFrame['status'], myDataFrame['Count'])
Run Code Online (Sandbox Code Playgroud)

在我的函数中,我试图这样做:

def processDataFrame(status, count):
    resultsList = list()
    if status == 0:
       resultsList.append(count + 10000)
    else:
       resultsList.append(count …
Run Code Online (Sandbox Code Playgroud)

python numpy pandas numpy-ndarray

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

如何在Python中计算x*xT

我想计算以下内容:

x*xT

但我不知道如何在 python 中执行此操作,我不想手动实现此操作,而是使用预定义的函数,例如 numpy 中的函数。

numpy似乎忽略了 xT 应该被转置。

代码:

import numpy as np

x = np.array([1, 5])

print(np.dot(x, x.T))  # = 26, This is not the matrix it should be!
Run Code Online (Sandbox Code Playgroud)

python numpy numpy-ndarray

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

乘以 numpy 矩阵并得到一些结果

我想用这个矩阵进行操作:

(a b)
(c d)
(e f)
Run Code Online (Sandbox Code Playgroud)

并得到:

(a*a+b*b c*c+d*d e*e+f*f)
Run Code Online (Sandbox Code Playgroud)

或任何矩阵,例如:

(a b c)
(d e f)
(g h i)
(j k l)
Run Code Online (Sandbox Code Playgroud)

并得到

(a*a+b*b+c*c d*d+e*e+f*f g*g+h*h+i*i j*j+k*k+l*l)
Run Code Online (Sandbox Code Playgroud)

我如何使其能够与任何矩阵一起工作?

python numpy-ndarray

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

从一维数组创建二维数组 - Python Numpy

假设我有一个 numpy 数组,例如

[0, 1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)

如何从每 3 个元素创建一个 2D 矩阵,如下所示:

[
[0,1,2],
[1,2,3],
[2,3,4],
[3,4,5]
]
Run Code Online (Sandbox Code Playgroud)

有没有比使用循环更有效的方法for


谢谢。

python numpy numpy-ndarray

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

尽管有轴规范,Numpy 附加仍不添加新行

我是 numpy 新手,我正在尝试创建添加新行。我读到我只需要指定轴。

现在我只是在测试

import numpy as np

arr = np.array(['1', '2', '3'])
print(np.append(arr, np.array(['4', '5', '6']), axis = 0))
Run Code Online (Sandbox Code Playgroud)

但这总是输出 ['1' '2' '3' '4' '5' '6']。我哪里出错了?

python numpy multidimensional-array numpy-ndarray

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