Numpy 的 fill_diagonal(~)
方法為 Numpy 數組的對角線設置指定值。請注意,這是就地發生的,即不會創建新數組。
參數
1. a
| array-like
輸入數組。
2. val
| scalar
填充對角線所需的值。
3. wrap
| boolean
| optional
對於行數多於列數的二維數組(即高矩陣),我們可以重複填充對角線。請參閱示例以進行說明。默認情況下,wrap=False
。
返回值
無 - 對角線就地填充。
例子
基本用法
考慮以下二維數組:
a = np.array([[5,6],[7,8]])
a
array([[5, 6],
[7, 8]])
用值 2 填充對角線:
np.fill_diagonal(a, 2)
a
array([[2, 6],
[7, 2]])
高矩陣
考慮以下高二維數組:
a = np.array([[1,1],[1,1],[1,1],[1,1],[1,1]])
a
array([[1, 1],
[1, 1],
[1, 1],
[1, 1],
[1, 1]])
不帶包裝
默認情況下,沒有環繞行為,因此隻會填充主對角線:
np.fill_diagonal(a, 0)
a
array([[0, 1],
[1, 0],
[1, 1],
[1, 1],
[1, 1]])
帶包裝
要啟用包裝行為,請像這樣設置wrap=True
:
np.fill_diagonal(a, 0, wrap=True)
a
array([[0, 1],
[1, 0],
[1, 1],
[0, 1],
[1, 0]])
請注意在填充下一個對角線之前如何跳過單行。
相關用法
- Python filecmp.cmpfiles()用法及代碼示例
- Python fileinput.filelineno()用法及代碼示例
- Python fileinput.lineno()用法及代碼示例
- Python fileinput.input用法及代碼示例
- Python fileinput.isfirstline()用法及代碼示例
- Python fileinput.input()用法及代碼示例
- Python fileinput.filename()用法及代碼示例
- Python filter()用法及代碼示例
- Python BeautifulSoup find_next方法用法及代碼示例
- Python calendar firstweekday()用法及代碼示例
- Python NumPy finfo方法用法及代碼示例
- Python BeautifulSoup find_all_next方法用法及代碼示例
- Python BeautifulSoup find_next_sibling方法用法及代碼示例
- Python BeautifulSoup find_previous_sibling方法用法及代碼示例
- Python NumPy fix方法用法及代碼示例
- Python string find()用法及代碼示例
- Python BeautifulSoup find方法用法及代碼示例
- Python BeautifulSoup find_parent方法用法及代碼示例
- Python BeautifulSoup find_all方法用法及代碼示例
- Python BeautifulSoup find_parents方法用法及代碼示例
- Python NumPy fliplr方法用法及代碼示例
- Python dict fromkeys()用法及代碼示例
- Python frexp()用法及代碼示例
- Python functools.wraps用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 NumPy | fill_diagonal method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。