NumPy 的 compress(~)
方法根據給定條件提取輸入值的子集。
注意
當輸入數組為一維時,NumPy 的 extract(~)
方法相當於compress(~)
。
參數
1.condition
| array-like
共 boolean
指示是否設置該值的布爾值數組。如果條件的大小小於輸入數組 a
,則輸出將被截斷以匹配條件的大小。
2. a
| array-like
輸入數組。
3. axis
| int
| optional
提取值所沿的軸。對於二維數組,允許的值如下:
軸 |
意義 |
---|---|
0 |
提取是按行進行的。 |
1 |
提取按列進行。 |
None |
輸入數組被視為展平數組。 |
默認情況下,axis=None
。
4. out
| Numpy array
| optional
用於放置提取的子集的 NumPy 數組。
返回值
一個新的 NumPy 數組保存輸入值的子集。
例子
壓縮一維數組
np.compress([True, False, True, False], [4,5,6,7])
array([4, 6])
請注意,這相當於以下內容:
a = np.array([4,5,6,7])
mask = [True, False, True, False]
a[mask]
array([4, 6])
截斷
當條件數組的大小小於輸入數組的大小時,就會發生截斷:
a = np.array([4,5,6,7])
np.compress([True, False], a)
array([4])
這裏,僅考慮數組中的前兩個值 - 但僅返回第一個值,因為第二個值被標記為 False。
壓縮二維數組
考慮以下二維數組:
a = np.array([[4,5],[6,7]])
a
array([[4, 5],
[6, 7]])
從展平數組中提取
np.compress([True, False, False, True], a)
array([4, 7])
逐行提取
np.compress([True, False], a, axis=0)
array([[4, 5]])
按列提取
np.compress([True, False], a, axis=1)
array([[4],
[6]])
相關用法
- Python compile()用法及代碼示例
- Python PIL composite()用法及代碼示例
- Python complex()用法及代碼示例
- Python codecs.decode()用法及代碼示例
- Python collections.somenamedtuple._replace用法及代碼示例
- Python collections.somenamedtuple._asdict用法及代碼示例
- Python collections.somenamedtuple._field_defaults用法及代碼示例
- Python NumPy cov方法用法及代碼示例
- Python codecs.encode()用法及代碼示例
- Python contextlib.AsyncContextDecorator用法及代碼示例
- Python collections.ChainMap用法及代碼示例
- Python contextlib.AsyncExitStack用法及代碼示例
- Python string count()用法及代碼示例
- Python collections.somenamedtuple._make用法及代碼示例
- Python NumPy count_nonzero方法用法及代碼示例
- Python configparser.ConfigParser.readfp用法及代碼示例
- Python code.compile_command()用法及代碼示例
- Python Wand color_matrix()用法及代碼示例
- Python configparser.ConfigParser.BOOLEAN_STATES用法及代碼示例
- Python math copysign()用法及代碼示例
- Python codeop.compile_command用法及代碼示例
- Python contextlib.ExitStack.pop_all用法及代碼示例
- Python contextlib.redirect_stdout用法及代碼示例
- Python collections.Counter用法及代碼示例
- Python configparser.BasicInterpolation用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 NumPy | compress method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。