dzourn Δημοσ. 24 Απριλίου 2020 Δημοσ. 24 Απριλίου 2020 (επεξεργασμένο) Καλησπερα παρακολουθω ενα ονλινε μαθημα απο το πανεπιστημιο του Ελσινκι και υπαρχει η παρακατω ασκηση. Write function vector_lengths that gets a two dimensional array of shape (n,m) as a parameter. Each row in this array corresponds to a vector. The function should return an array of shape (n,), that has the length of each vector in the input. The length is defined by the usual Euclidean norm. Don’t use loops at all in your solution. Instead use vectorized operations. You must use at least the np.sum and the np.sqrt functions. You can’t use the function scipy.linalg.norm. Test your function in the main function. Την εχω υλοποιηση ως εξης. #!/usr/bin/env python3 import numpy as np import scipy.linalg def vector_lengths(a): a2 = a**2 a3 = np.sum(a2,axis=0) a4 = np.sqrt(a3) return a4 def main(): a = np.random.rand(1,10) print(vector_lengths(a)) if __name__ == "__main__": main() Παρολαυτα οταν το τρεχω στον αυτοματοποιημενο ελεγχο κωδικα μου βγαζει το εξης error. Testing: part02-e14_vector_lengths Failed: test.test_vector_lengths.VectorLengths.test_content Tuples differ: (1,) != (10,) First differing element 0: 1 10 - (1,) + (10,) ? + : Incorrect shape! Test results: 3/4 tests passed 75%[████████████████████████████████████████████████████████░░░░░░░░░░░░░░░░░░░] Υπαρχει καποιος που να εχει ιδεα τι παιζει; Τι πρεπει να κανω; Επεξ/σία 24 Απριλίου 2020 από xsperminator
Merdock Δημοσ. 24 Απριλίου 2020 Δημοσ. 24 Απριλίου 2020 Για δοκίμασε μια axis=1 αντί για 0 που έχεις. 1
pmav99 Δημοσ. 26 Απριλίου 2020 Δημοσ. 26 Απριλίου 2020 The function should return an array of shape (n,) Άρα αν βάλεις ως input a = np.random.rand(3,10) θα πρέπει να σου επιστρέψει ένα array με shape (3,) Η υλοποίηση σου τι επιστρέφει; Σε τέτοιου τύπου προβλήματα βολεύει πολύ να γράφεις tests. Πχ: assert vector_lengths(np.random.rand(1, 10)).shape == (1,) assert vector_lengths(np.random.rand(2, 10)).shape == (2,) assert vector_lengths(np.random.rand(5, 10)).shape == (5,) Επί της ουσίας, ο αυτοματοποιημένος έλεγχος του κώδικα τέτοιου τύπου tests τρέχει
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα