![](/img/trans.png)
[英]Is there an analog to matlab's hgtransform in python? It made coding fi
[英]matlab to python coding
我在 MATLAB 中有這個代碼,我正在嘗試在 Python 中轉換它。
yc(1:45)=-2;
yc(46:90)=2;
yc(91:136)=-2;
yc(137:182)=2;
我不知道如何在 python thnx 中轉換它來幫助我
直接等效,使用numpy
將是:
>>> import numpy as np
>>> yc = np.empty(182)
>>> yc[:45] = -2 # Equivalent to, yc[0:45] = -2
>>> yc[45:90] = 2
>>> yc[90:136] = -2
>>> yc[136:] = 2 # Equivalent to, yc[136:182] = 2
其中np.empty
創建一個具有給定形狀的隨機值的數組。 然后我們繼續通過訪問切片來分配不同的值。
>>> yc = np.arange(182)
>>> yc = np.select(condlist=[
yc < 45, (45 <= yc) & (yc < 90),
(90 <= yc) & (yc < 136), yc >= 136
],
choicelist=[-2, 2, -2, 2])
>>> yc
array([-2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2,
-2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2,
-2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2,
-2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2,
-2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])
這里np.arange
創建了一個值范圍從 0 到 181(總共 182 個值)的數組,我們創建一個新數組,根據不同的條件替換數組中的不同值。
要記住的事情:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.