我是python的新手,并获得了python代码,可以将我的工作翻译成Matlab.我有一个具体的问题:
我有一个大小的矩阵,例如(rows/columns/3rd dim)=(3/4/2).
A = array([[[1, 56, 0, 6],[5, 9, 10, 3],[50, 51, 59, 64]],[[2, 6, 4, 3],[10, 80, 53, 6],[12, 5, 36, 15]]])
Run Code Online (Sandbox Code Playgroud)
对于这个矩阵(和其他),我已经给出了这个功能
B = A.argmin(axis=-1)
Run Code Online (Sandbox Code Playgroud)
它搜索每行中最小的索引.(numpy.argmin手册)
B在这种情况下:
B = array([[2, 3, 0],[0, 3, 1]])
Run Code Online (Sandbox Code Playgroud)
和大小(行/列)=(2/3).
我的意思是将其完全转换为Matlab版本,以便我得到这个矩阵,但在Matlab中([Min Matlab Manual] [2])
[~,B] = min(A,[],2)
Run Code Online (Sandbox Code Playgroud)
给我一个大小矩阵(行/列/第三个暗)=(3/1/2). Matlab输出
如果一个人认为python开始索引为0而matlab为1,则每行中最小值的索引是相同的.问题是矩阵的顺序.
如何在pylab中使用matlab获得每行最小值的最小值?
我用permute和vertcat尝试了很多,但这并没有成功,最终它必须适用于非常大的矩阵.
如果有人能帮助我,我会很高兴的.提前致谢!