-5
A
回答
1
NumPy的沒有拿到第一個匹配,not yet anyway
的能力。
所以,我們需要用np.where
取代所有匹配的取代find
和numpy.abs
將替代abs
。因此,這將是 -
import numpy as np
lam = np.where(np.abs(a)>tol)[0][0]-1
因此,我們得到的所有匹配指數與np.where(np.abs(a)>tol)[0]
,然後通過索引到其與np.where(np.abs(a)>tol)[0][0]
第一個元素,最後減去它1
獲得的第一個索引,就像我們在MATLAB 。
採樣運行 -
在MATLAB:
>> b = [-4,6,-7,-2,8];
>> tol = 6;
>> find(abs(b)>tol,1,'first')-1
ans =
2
在NumPy的:
In [23]: a = np.array([-4,6,-7,-2,8])
In [24]: tol = 6
In [25]: np.where(np.abs(a)>tol)[0][0]-1
Out[25]: 1 # 1 lesser than MATLAB vesion because of 0-based indexing
出於性能考慮,我建議使用np.argmax
給我們的第一個匹配的一個指數,而不是使用np.where(np.abs(a)>tol)[0]
來計算所有匹配的索引,像這樣 -
In [40]: np.argmax(np.abs(a)>tol)-1
Out[40]: 1
相關問題
- 1. 從f90到where語句的轉換到matlab轉換
- 2. 轉換MATLAB代碼到Python
- 3. matlab到python代碼轉換
- 4. Python到Matlab的轉換?
- 5. 轉換SQL語句到LINQ
- 6. 轉換語句
- 7. Python替換語句
- 8. 轉換select語句
- 9. SQL轉換語句
- 10. SQL語句轉換
- 11. IF語句轉換成SWITCH語句
- 12. 轉換SQL語句JPQL語句
- 13. 轉換UPDATE語句的SELECT語句
- 14. 將UPDATE語句轉換爲SELECT語句
- 15. 困難MATLAB到Python代碼轉換
- 16. 哈爾從Matlab轉換矩陣到Python
- 17. 從matlab到python的代碼轉換
- 18. 將matlab轉換爲python/numpy
- 19. Matlab/Python的數據轉換
- 20. 將matlab轉換爲python
- 21. MATLAB IF語句
- 22. matlab到c + +轉換
- 23. 轉換SQL語句到Rails的ActiveRecord
- 24. 轉換左外連接到WHERE語句
- 25. 將HTML轉換到PHP條件語句
- 26. 轉換CSV文件到MySQL INSERT語句
- 27. 轉換SQL ALTER語句到MySql
- 28. 從if轉換到switch語句
- 29. 轉換PHP條件語句到MySQL的if-then條件語句
- 30. Python語句反轉器
這將是有用的,如果你提供一些'實際'b,tol,並顯示什麼Matlab –