English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
يعمل NumPy على إدخال تنسيق ملف بسيط لـ ndarray npy.
ملفات npy تستخدم لتحفظ البيانات اللازمة لإنشاء ndarray،الرسوم،dtype وما إلى ذلك
والعديد من الدوال IO المستخدمة هي:
وال�数ونيumpy.load() و numpy.save() هما الوسائل الرئيسية لقراءة وكتابة بيانات المصفوفات في الملفات،بافتراض الافتراضي،سيتم حفظ المصفوفات بتنسيق غير مضغوط من صيغة ثنائية،وتم حفظها في ملف بتوسعة .npy �数ونيumpy.savez() يستخدم لتحفظ عدة مصفوفات في ملف،بافتراض الافتراضي،سيتم حفظ المصفوفات بتنسيق غير مضغوط من صيغة ثنائية،وتم حفظها في ملف بتوسعة .npz وال�数ونيumpy.loadtxt() و numpy.savetxt() تتعامل مع ملفات النصوص العادية (.txt وما إلى ذلك) شرح المعلمات: يمكننا النظر في محتويات الملف: يمكن ملاحظة أن الملف يحتوي على أكواد غير واضحة، لأنها هي بيانات مخصصة لنظام NumPy الثنائي. يمكننا استخدام وظيفة load() لقراءة البيانات وعرضها بشكل صحيح: نتيجة الإخراج هي: وظيفة numpy.savez() تقوم بحفظ عدة مصفوفات في ملف يحتوي على امتداد npz. شرح المعلمات: نتيجة الإخراج هي: وظيفة savetxt() هي حفظ البيانات باستخدام نمط ملف النص البسيط، ووظيفة الاستدعاء المقابلة loadtxt() لاسترداد البيانات. يمكن لتقديم متغير delimiter أن يشمل مختلفة الفواصل، الوظائف المبدلة، عدد الأعمدة التي يجب تجاوزها، إلخ. نتيجة الإخراج هي: استخدام متغير delimiter:numpy.save()
numpy.save(file, arr, allow_pickle=True, fix_imports=True)
import numpy as np
a = np.array([1,2,3,4,5])
# حفظ إلى ملف test.npy
np.save('test.npy',a)
# حفظ إلى ملف test1.npy،إذا لم يكن هناك امتداد ملف .npy في نهاية مسار الملف،سيتم إضافة الامتداد تلقائيًا
np.save('test1.npy',a)
$ cat test.npy
?NUMPYv{'descr': '<i8', 'fortran_order': False, 'shape': (5,),}
$ cat test1.npy
?NUMPYv{'descr': '<i8', 'fortran_order': False, 'shape': (5,),}
import numpy as np
b = np.load('test.npy')
print (b)
[1 2 3 4 5]
np.savez
numpy.savez(file, *args, **kwds)
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
b = np.arange(0, 1.0, 0.1)
c = np.sin(b)
# c استخدمت كلمات المفتاح sin_array
np.savez("w3codebox.npz", a, b, sin_array = c)
r = np.load("w3codebox.npz")
print(r.files) # عرض أسماء المصفوفات المختلفة
print(r['arr_0']) # مصفوفة a
print(r['arr_1']) # مصفوفة b
print(r['sin_array']) # مصفوفة c
['sin_array', 'arr_0', 'arr_1']
[[1 2 3]
[4 5 6]
[0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]
[0. 0.09983342 0.19866933 0.29552021 0.38941834 0.47942554
0.56464247 0.64421769 0.71735609 0.78332691
savetxt()
np.loadtxt(FILENAME, dtype=int, delimiter=' ')
np.savetxt(FILENAME, a, fmt="%d", delimiter=",")
import numpy as np
a = np.array([1,2,3,4,5])
np.savetxt('out.txt',a)
b = np.loadtxt('out.txt')
print(b)
[1. 2. 3. 4. 5.]
import numpy as np
a=np.arange(0,10,0.5).reshape(4,-1)
np.savetxt("out.txt",a,fmt="%d",delimiter=",") # قم بتغيير الحفظ كعدد صحيح، باستخدام الفاصلة كنقاط عرقلية
b = np.loadtxt("out.txt",delimiter=",") # يجب تحديد الفاصلة كنقاط عرقلية عند التحميل
print(b)
[[0. 0. 1. 1. 2.]]
[2. 3. 3. 4. 4.]
[5. 5. 6. 6. 7.]
[7. 8. 8. 9. 9.]