nabu
nabu

Reputation: 25

Deleting the last column in a python array

I am trying to build a basic number classifier in python, and I have a 3923 * 65 array. Each row in my array is an image that when showed is a number from 0 to 9. 3923 * 64 is the actual size of my array, and the last column is the actual number the image is. I already have an array for the entire 3923 * 65, and one for the 3923 * 64 part of it. full array:

fullImageArray = np.zeros((len(myImageList),65), dtype = np.float64)
fullImageArray = np.array(myImageList)

number array:

fullPlotArray = np.zeros((len(myImageList),64), dtype = np.float64)
fullPlotArray = np.array(fullImageArray)
fullPlotArray.resize(len(myImageList),64)

How do I make an array of only the last column?

Upvotes: 0

Views: 6341

Answers (1)

Sven Marnach
Sven Marnach

Reputation: 601391

You can create views of your data by slicing the array:

full_array = np.array(myImageList)
plot_array = full_array[:, :64]  # First 64 columns of full_array
last_column = full_array[:, -1]

The results will be views into the same data as the original array; no copy is created. changing the last column of full_array is the same as changing last_column, since they are pointing to the same data in memory.

See the Numpy documentation on indexing and slicing for further information.

Upvotes: 6

Related Questions