Utilisation de l'indexation de tableaux entiers pour extraire des éléments basés sur des indices de tableaux secondaires
Dans le scénario donné, l'objectif est de récupérer des éléments spécifiques d'un tableau A en utilisant des indices spécifiés dans un deuxième tableau B. Au lieu de s'appuyer sur np.take ou np.choose, une approche plus simple consiste à utiliser l'indexation de tableau d'entiers de NumPy :
A[np.arange(A.shape[0]),B.ravel()]
Voici comment ce code atteint l'objectif résultat souhaité :
Cette approche est particulièrement utile lorsque B est un tableau 1D ou une liste d'indices de colonne. En sautant l'opération d'aplatissement, le code devient encore plus simple :
A[np.arange(A.shape[0]),B]
Exemple :
A = np.array([[0, 1], [2, 3], [4, 5]]) B = np.array([1, 0, 1]) result = A[np.arange(A.shape[0]), B] print(result) # Output: [1, 2, 5]
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!