From d8789bf7524d31c56a4359b29dc3702bbf16b57f Mon Sep 17 00:00:00 2001 From: Martina Rivero Date: Tue, 17 Oct 2023 20:05:03 +0200 Subject: [PATCH] martina --- your-code/main.py | 43 +++++++++++++++++++++++++++++++------------ 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/your-code/main.py b/your-code/main.py index 78c792b..6fc0c0d 100644 --- a/your-code/main.py +++ b/your-code/main.py @@ -1,69 +1,88 @@ #1. Import the NUMPY package under the name np. - +import numpy as np #2. Print the NUMPY version and the configuration. +print(np.__version__) #3. Generate a 2x3x5 3-dimensional array with random values. Assign the array to variable "a" # Challenge: there are at least three easy ways that use numpy to generate random arrays. How many ways can you find? - +a = np.random.randint(100, size = (2, 3, 5)) #4. Print a. +print(a) #5. Create a 5x2x3 3-dimensional array with all values equaling 1. #Assign the array to variable "b" - +b = np.ones((5, 2, 3)) #6. Print b. - +print(b) #7. Do a and b have the same size? How do you prove that in Python code? +print(a.size == b.size) +#You can prove it by using the method .size #8. Are you able to add a and b? Why or why not? +print(a + b) + +print(a.size) +print(b.size) + +#It cannot be done because the sizes of the two arrays do not coincide. #9. Transpose b so that it has the same structure of a (i.e. become a 2x3x5 array). Assign the transposed array to varialbe "c". +c = b.transpose(1, 2, 0) +print(c) #10. Try to add a and c. Now it should work. Assign the sum to varialbe "d". But why does it work now? +d = np.add(a, c) +print(d) +#It works because the size of "c" now coincides with the size of "a". #11. Print a and d. Notice the difference and relation of the two array in terms of the values? Explain. - - - +print(a) +print(d) +# They are different because d includes the sum of a value number "1" in variable b. #12. Multiply a and c. Assign the result to e. - +e = np.multiply (a, c) +print(e) #13. Does e equal to a? Why or why not? +print(e == a) - +#They are all equal because array b only contains zeros. Array c is transposing. Variable d and e are only adding and multiplying. #14. Identify the max, min, and mean values in d. Assign those values to variables "d_max", "d_min", and "d_mean" - +d_max = np.max(d) +d_min = np.min(d) +d_mean = np.mean(d) #15. Now we want to label the values in d. First create an empty array "f" with the same shape (i.e. 2x3x5) as d using `np.empty`. - - +f = np.empty([2, 3, 5], list) +print(f) """ #16. Populate the values in f. For each value in d, if it's larger than d_min but smaller than d_mean, assign 25 to the corresponding value in f.