Book Image

Learning NumPy Array

By : Ivan Idris
Book Image

Learning NumPy Array

By: Ivan Idris

Overview of this book

Table of Contents (14 chapters)
Learning NumPy Array
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Creating views and copies


In the example about the ravel() function, views were mentioned. Views should not be confused with the concept of database views. Views in the NumPy world are not read-only, and you don't have the possibility to protect the underlying data. It is important to know when we are dealing with a shared array view and when we have a copy of array data. A slice, for instance, will create a view. This means that if you assign a slice to a variable and then change the underlying array, the value of this variable will change. We will create an array from the famous Lena image, copy the array, create a view, and at the end, modify the view. The Lena image array comes from a SciPy function.

  1. To create a copy of the Lena array, the following line of code is used:

    acopy = lena.copy()
  2. Now, to create a view of the array, use the following line of code:

    aview = lena.view()
  3. Set all the values of the view to 0 with a flat iterator, as follows:

    aview.flat = 0

The end result is that only one...