[파이썬][numpy] numpy `put` 함수

Manipulating array elements is a common task in scientific computing and data analysis. The Numpy library, a fundamental package for numerical computing in Python, provides a wide range of functions for efficient array manipulation. One such function is the put function, which allows you to assign values to specific elements of an array based on a given index.

What is the put function?

The put function in Numpy is a convenient way to modify multiple elements of an array simultaneously. It takes three parameters: the array, the indices of the elements to be modified, and the values to assign. The put function replaces the selected elements of the array with the specified values.

The syntax of the put function is as follows:

numpy.put(arr, ind, values, mode='raise')

Examples

Let’s look at a few examples to understand how the put function works:

Example 1: Modifying elements in a 1-D array

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
indices = [1, 3]
values = [10, 20]

np.put(arr, indices, values)

print(arr)

Output:

[1 10 3 20 5]

In this example, we have a 1-D array arr = [1, 2, 3, 4, 5]. We want to modify the elements at indices 1 and 3 to values 10 and 20, respectively. The put function replaces the elements at the given indices, resulting in the modified array [1, 10, 3, 20, 5].

Example 2: Modifying elements in a 2-D array

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
indices = [0, 2]
values = [[10, 11, 12], [20, 21, 22]]

np.put(arr, indices, values)

print(arr)

Output:

[[10  2 11]
 [20  5 22]]

In this example, we have a 2-D array arr = [[1, 2, 3], [4, 5, 6]]. We want to modify the elements at indices (0,0), (0,2), (1,0), and (1,2) to the corresponding values from the values array. The put function replaces the specified elements, resulting in the modified array [[10, 2, 11], [20, 5, 22]].

Conclusion

The put function in Numpy is a powerful tool for efficiently modifying array elements. Whether you need to update elements in a 1-D array or a multi-dimensional array, the put function can handle the task with ease. It offers flexibility and performance for array manipulation tasks in scientific computing and data analysis.