我在Matlab中有这行代码:
tenevents$datetime <- c("2016-01-18 07:00:00 EST", "2016-02-15 11:00:00 EST", "2016-02-25 12:00:00 EST", "2016-03-01 11:00:00 EST", "2016-03-12 09:00:00 EST", "2016-05-19 16:46:00 EDT", "2016-09-13 09:30:00 EDT","2016-09-15 07:15:00 EDT", "2016-10-03 10:26:00 EDT", "2016-11-19 04:00:00 EST")
v <- density( as.numeric(tenevents$datetime), bw = ucv(as.numeric(tenevents$datetime)) )
我想在python中翻译它,但我似乎无法弄清楚矩阵内部冒号“:”的功能。有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
这取决于您在python中使用orig_img
的内容。如果使用列表列表,则可以使用列表索引。如果您正在使用支持非常相似的索引的numpy数组/矩阵。
In []: a = list(range(10))
In []: a
Out[]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
In []: a[3:4]
Out[]: [3]
In []: a[3:]
Out[]: [3, 4, 5, 6, 7, 8, 9]
In []: a[3:7]
Out[]: [3, 4, 5, 6]
这里是numpy:
In []: an = np.array(a)
In []: an[3:7]
Out[]: array([3, 4, 5, 6])
列表不能包含2个维度,因此您可以执行首先请求index1的a[ind1][ind2]
,然后执行index2,因为它是列表中的列表。对于numpy数组,你也是这样做的。对于numpy矩阵,它与matlab非常相似:
In []: mat = np.random.rand(20,20)
In []: mat[3:6, 5:8]
Out[]:
array([[0.67252461, 0.96330823, 0.96040509],
[0.59030486, 0.33355469, 0.45762365],
[0.19180032, 0.03105064, 0.63050375]])
注意:Matlab的索引从1到length of array
。 Python让它们从0开始到length of array - 1
。