语法ndarray[:,list[i]]在python中是什么意思?

2024-04-24 19:54:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在网上看一本关于Python的教程。我对Python一无所知,所以我搜索了一下,找不到答案。你知道吗

有这样一些代码:

s = np.tanh(self.X[:,Y[t]])

其中,X是ndarray,Y是一个列表列表(其中每个列表都是整数类型), np是numpy对象,tanh是双曲正切。你知道吗

这个语法是什么意思?你知道吗


Tags: 对象答案代码selfnumpy类型列表np
1条回答
网友
1楼 · 发布于 2024-04-24 19:54:10

在numpy的上下文中,它可以例如允许访问列,因此例如在您的示例X[:, Y[t]]中,它允许您访问X的列,该列由Y[t]中的值索引。你知道吗

:基本上表示“所有行”,Y[t]指定列索引。你知道吗

下面是一个简单的例子:

In [1]: import numpy as np

In [3]: m = np.array([['a', 'b'], ['c', 'd'], ['f', 'g']])

In [4]: m[:, 0]
Out[4]: 
array(['a', 'c', 'f'], 
      dtype='|S1')

In [5]: m[:, 1]
Out[5]: 
array(['b', 'd', 'g'], 
      dtype='|S1')

如果“列索引”是一个列表呢?你知道吗

如果使用m[:, some_list],则:冒号将要求所有行,然后列将按此顺序成为some_list中的列索引

例如,如果我们想要所有的行和列[1, 0](按这个顺序),那么下面是您得到的:

In [53]: m[:, [1, 0]]
Out[53]: 
array([['b', 'a'],
       ['d', 'c'],
       ['g', 'f']], 
      dtype='|S1')

相关问题 更多 >