Data Type Conversion and Copying Arrays
NumPy arrays have a fixed data type, like int
, float
, or bool
.
You can change the type using .astype()
.
Also, when copying arrays, it’s important to know the difference between a real copy and just a reference.
Changing Data Type with .astype()
You can convert an array from one type to another:
arr = np.array([1.5, 2.8, 3.0])
int_arr = arr.astype(int)
print(int_arr) # [1 2 3]
This turns float values into integers.
Copying Arrays
By default, assigning one array to another does not create a real copy — they both point to the same data.
a = np.array([1, 2, 3])
b = a # Not a copy!
b[0] = 99
print(a) # [99 2 3] — original was modified
Use .copy()
to make a true copy:
c = a.copy()
c[0] = 0
print(a) # Still [99 2 3]
Summary
- Use
.astype()
to change data types (e.g., float to int) - Use
.copy()
to create a real copy of an array - Without
.copy()
, both variables refer to the same array in memory
What’s Next
You’ll now practice converting types and copying arrays safely in Jupyter.