Atribuição de Valores a Subarrays Indexados
Com arrays indexados, as operações tornam-se mais interessantes. Aqui, o foco será em subarrays 1D e 2D, pois subarrays 3D são raramente utilizados na prática.
Vamos começar atribuindo valores a fatias. A sintaxe geral é: slice = values, onde slice é uma fatia de um determinado array e values são os valores a serem atribuídos.
Formatos possíveis para values:
- um escalar único (número);
- um array 1D do mesmo tamanho da fatia (se for 1D); ou do tamanho da segunda dimensão (se a fatia for 2D);
- um array 2D com o mesmo formato de uma fatia 2D.
123456789101112131415161718import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
Ao atribuir um escalar a uma fatia 1D, esse escalar é atribuído a cada elemento da fatia. Quando um array 1D é atribuído a uma fatia 2D, esse array 1D é atribuído a cada array 1D na fatia. A atribuição de um escalar a uma fatia 2D funciona da mesma forma que em uma fatia 1D.
A atribuição de valores a subarrays indexados por array de inteiros funciona da mesma maneira que com fatias. A atribuição de valores a subarrays indexados por booleanos funciona da mesma forma que com fatias 1D.
Swipe to start coding
Você está gerenciando um conjunto de dados de preços e avaliações de produtos. Os preços estão armazenados no array prices, e as avaliações (de 0 a 10) estão armazenadas no array ratings, onde cada linha representa uma categoria de produto diferente. Sua tarefa é atualizar os preços e avaliações com base em critérios específicos:
- Atribuir o valor
20a cada elemento empricesmaior que 10 (indexação booleana) utilizando um escalar. - Atribuir um array NumPy com os elementos
9,8aos dois últimos elementos da segunda linha (segundo array 1D) deratings. Utilize um índice de linha positivo e um slice especificando apenas ostart(índice positivo).
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 3.7
Atribuição de Valores a Subarrays Indexados
Deslize para mostrar o menu
Com arrays indexados, as operações tornam-se mais interessantes. Aqui, o foco será em subarrays 1D e 2D, pois subarrays 3D são raramente utilizados na prática.
Vamos começar atribuindo valores a fatias. A sintaxe geral é: slice = values, onde slice é uma fatia de um determinado array e values são os valores a serem atribuídos.
Formatos possíveis para values:
- um escalar único (número);
- um array 1D do mesmo tamanho da fatia (se for 1D); ou do tamanho da segunda dimensão (se a fatia for 2D);
- um array 2D com o mesmo formato de uma fatia 2D.
123456789101112131415161718import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
Ao atribuir um escalar a uma fatia 1D, esse escalar é atribuído a cada elemento da fatia. Quando um array 1D é atribuído a uma fatia 2D, esse array 1D é atribuído a cada array 1D na fatia. A atribuição de um escalar a uma fatia 2D funciona da mesma forma que em uma fatia 1D.
A atribuição de valores a subarrays indexados por array de inteiros funciona da mesma maneira que com fatias. A atribuição de valores a subarrays indexados por booleanos funciona da mesma forma que com fatias 1D.
Swipe to start coding
Você está gerenciando um conjunto de dados de preços e avaliações de produtos. Os preços estão armazenados no array prices, e as avaliações (de 0 a 10) estão armazenadas no array ratings, onde cada linha representa uma categoria de produto diferente. Sua tarefa é atualizar os preços e avaliações com base em critérios específicos:
- Atribuir o valor
20a cada elemento empricesmaior que 10 (indexação booleana) utilizando um escalar. - Atribuir um array NumPy com os elementos
9,8aos dois últimos elementos da segunda linha (segundo array 1D) deratings. Utilize um índice de linha positivo e um slice especificando apenas ostart(índice positivo).
Solução
Obrigado pelo seu feedback!
single