learn-python/contrib/numpy/reshape-array.md

55 wiersze
1.6 KiB
Markdown
Czysty Zwykły widok Historia

2024-05-30 14:25:02 +00:00
# Numpy Array Shape and Reshape
In NumPy, the primary data structure is the ndarray (N-dimensional array). An array can have one or more dimensions, and it organizes your data efficiently.
Code to create a 2D array
``` python
import numpy as np
numbers = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(numbers)
# Output:
# array([[1, 2, 3, 4],[5, 6, 7, 8]])
```
## Changing Array Shape using Reshape()
The `reshape()` function allows you to rearrange the data within a NumPy array.
It take 2 arguements, row and columns. The `reshape()` can add or remove the dimensions. For instance, array can convert a 1D array into a 2D array or vice versa.
``` python
arr_1d = np.array([1, 2, 3, 4, 5, 6]) # 1D array
arr_2d = arr_1d.reshape(2, 3) # Reshaping with 2rows and 3cols
print(arr_2d)
# Output:
# array([[1, 2, 3],[4, 5, 6]])
```
## Changing Array Shape using Resize()
The `resize()` function allows you to modify the shape of a NumPy array directly.
It take 2 arguements, row and columns.
``` python
import numpy as np
arr_1d = np.array([1, 2, 3, 4, 5, 6])
arr_1d.resize((2, 3)) # 2rows and 3cols
print(arr_1d)
# Output:
# array([[1, 2, 3],[4, 5, 6]])
```
## Reshape() VS Resize()
| Reshape | Resize |
| ----------- | ----------- |
| Does not modify the original array | Modifies the original array in-place |
| Creates a new array | Changes the shape of the array |
| Returns a reshaped array | Doesn't return anything |
| Compatibility between dimensions | Does not compatibility between dimensions |
| Syntax: reshape(row,col) | Syntax: resize((row,col)) |