- 用法:- pandas.api.indexers.check_array_indexer(array, indexer)
- 檢查 - indexer是否是- array的有效數組索引器。- 對於布爾掩碼, - array和- indexer被檢查為具有相同的長度。驗證 dtype,如果它是整數或布爾 ExtensionArray,則檢查是否存在缺失值,並將其轉換為適當的 numpy 數組。其他 dtypes 將引發錯誤。- 非數組索引器(整數、切片、省略號、元組、..)按原樣傳遞。 - array:array-like
- 被索引的數組(僅用於長度)。 
- indexer:array-like 或 list-like
- 用於索引的array-like。 List-like 還不是 numpy 數組或 ExtensionArray 的輸入被轉換為一個。其他輸入類型按原樣傳遞。 
 
- numpy.ndarray
- 經過驗證的索引器作為可用於索引的 numpy 數組。 
 
- 索引錯誤
- 當長度不匹配時。 
- ValueError
- 當 - indexer無法轉換為 numpy ndarray 以進行索引時(例如,存在缺失值)。
 
 - 參數:- 返回:- 拋出:- 例子:- 檢查布爾掩碼時,當參數全部有效時返回布爾 ndarray。 - >>> mask = pd.array([True, False]) >>> arr = pd.array([1, 2]) >>> pd.api.indexers.check_array_indexer(arr, mask) array([ True, False])- 當長度不匹配時引發 IndexError。 - >>> mask = pd.array([True, False, True]) >>> pd.api.indexers.check_array_indexer(arr, mask) Traceback (most recent call last): ... IndexError:Boolean index has wrong length:3 instead of 2.- 布爾數組中的 NA 值被視為 False。 - >>> mask = pd.array([True, pd.NA]) >>> pd.api.indexers.check_array_indexer(arr, mask) array([ True, False])- 一個 numpy 布爾掩碼將通過(如果長度正確): - >>> mask = np.array([True, False]) >>> pd.api.indexers.check_array_indexer(arr, mask) array([ True, False])- 同樣對於整數索引器,當它是有效索引器時返回整數 ndarray,否則會出錯(對於整數索引器,不需要匹配長度): - >>> indexer = pd.array([0, 2], dtype="Int64") >>> arr = pd.array([1, 2, 3]) >>> pd.api.indexers.check_array_indexer(arr, indexer) array([0, 2])- >>> indexer = pd.array([0, pd.NA], dtype="Int64") >>> pd.api.indexers.check_array_indexer(arr, indexer) Traceback (most recent call last): ... ValueError:Cannot index with an integer indexer containing NA values- 對於非整數/布爾數據類型,會引發相應的錯誤: - >>> indexer = np.array([0., 2.], dtype="float64") >>> pd.api.indexers.check_array_indexer(arr, indexer) Traceback (most recent call last): ... IndexError:arrays used as indices must be of integer or boolean type
相關用法
- Python pandas.api.indexers.FixedForwardWindowIndexer用法及代碼示例
- Python pandas.api.types.is_timedelta64_ns_dtype用法及代碼示例
- Python pandas.api.types.is_sparse用法及代碼示例
- Python pandas.api.types.is_extension_array_dtype用法及代碼示例
- Python pandas.api.types.is_extension_type用法及代碼示例
- Python pandas.api.types.is_dict_like用法及代碼示例
- Python pandas.api.types.is_float_dtype用法及代碼示例
- Python pandas.api.extensions.ExtensionArray.take用法及代碼示例
- Python pandas.api.types.is_datetime64_any_dtype用法及代碼示例
- Python pandas.api.types.is_hashable用法及代碼示例
- Python pandas.api.types.is_categorical用法及代碼示例
- Python pandas.api.extensions.ExtensionDtype用法及代碼示例
- Python pandas.api.types.is_scalar用法及代碼示例
- Python pandas.api.types.is_number用法及代碼示例
- Python pandas.api.extensions.ExtensionArray.repeat用法及代碼示例
- Python pandas.api.types.is_signed_integer_dtype用法及代碼示例
- Python pandas.api.types.is_datetime64tz_dtype用法及代碼示例
- Python pandas.api.types.is_datetime64_ns_dtype用法及代碼示例
- Python pandas.api.extensions.register_index_accessor用法及代碼示例
- Python pandas.api.types.is_datetime64_dtype用法及代碼示例
注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.api.indexers.check_array_indexer。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
