Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
语法ndarray[:,list[i]]在python中是什么意思?_Python_Numpy_Syntax - Fatal编程技术网

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

语法ndarray[:,list[i]]在python中是什么意思?,python,numpy,syntax,Python,Numpy,Syntax,我正在网上看Python教程。我对Python一无所知,所以我搜索了一下,没有找到答案 有些代码如下所示: s = np.tanh(self.X[:,Y[t]]) 其中,X是ndarray,Y是列表列表列表(其中每个列表都是整数类型), np是一个numpy对象,tanh是双曲正切 这个语法是什么意思?在numpy的上下文中,它可以例如允许访问列,因此例如在您的示例中X[:,Y[t]]中,它允许您访问X的列,该列由Y[t]中的值索引 :基本上表示“所有行”,而Y[t]指定列索引 下面是一个简单

我正在网上看Python教程。我对Python一无所知,所以我搜索了一下,没有找到答案

有些代码如下所示:

s = np.tanh(self.X[:,Y[t]])
其中,
X
是ndarray,
Y
是列表列表列表(其中每个列表都是整数类型),
np
是一个numpy对象,
tanh
是双曲正切


这个语法是什么意思?

在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')

你能展示一些示例代码吗?我怀疑所描述的代码是否有效。
X
几乎肯定不是列表列表,但可能是一个numpy ndarray。@DSM X是使用“np.random.uniform”生成的。抱歉,正如我所说,我是python新手。实际上Y[t]也是一个列表。也就是说,Y本身就是一个列表列表。所以Y[t]应该是[2,4,5,6,8,…]。那么X[:,Y[t]]的输出是什么呢?可能的猜测!输出可以是。。。m[:,[0,1]=>['a','c','f','b','d','g']我说得对吗?@HemendraSharma
m[:,[0,1]]
会要求“第0列和第1列中的所有m行”,我在回答中添加了跟踪来解释