أنواع بيانات NumPy
أنواع البيانات في بايثون
تحتوي Python افتراضيًا على أنواع البيانات التالية:
strings
- تُستخدم لتمثيل البيانات النصية ، ويرد النص تحت علامات اقتباس. على سبيل المثال "ABCD"integer
- تستخدم لتمثيل الأعداد الصحيحة. على سبيل المثال -1 ، -2 ، -3float
- تستخدم لتمثيل الأعداد الحقيقية. على سبيل المثال 1.2 ، 42.42boolean
- تُستخدم لتمثيل صح أو خطأ.complex
- تستخدم لتمثيل الأعداد المركبة. على سبيل المثال 1.0 + 2.0j، 1.5 + 2.5j
أنواع البيانات في NumPy
يحتوي NumPy على بعض أنواع البيانات الإضافية ، ويشير إلى أنواع البيانات ذات الحرف الواحد ، مثل i
الأعداد الصحيحة ، والأعداد u
الصحيحة غير الموقعة ، إلخ.
يوجد أدناه قائمة بجميع أنواع البيانات في NumPy والأحرف المستخدمة لتمثيلها.
i
- عدد صحيحb
- منطقيu
- عدد صحيح غير موقعةf
- تطفوc
- تعويم معقدm
- timedeltaM
- التاريخ والوقتO
- يعارضS
- سلسلةU
- سلسلة يونيكودV
- جزء ثابت من الذاكرة لنوع آخر (باطل)
التحقق من نوع بيانات المصفوفة
يحتوي كائن مصفوفة NumPy على خاصية تسمى dtype
تُرجع نوع بيانات المصفوفة:
مثال
الحصول على نوع بيانات كائن مصفوفة:
import numpy as np
arr = np.array([1, 2, 3, 4])
print(arr.dtype)
مثال
احصل على نوع بيانات المصفوفة التي تحتوي على سلاسل:
import numpy as np
arr = np.array(['apple',
'banana', 'cherry'])
print(arr.dtype)
تكوين مصفوفات بنوع بيانات محدد
نستخدم array()
الدالة لإنشاء المصفوفات ، ويمكن أن تأخذ هذه الوظيفة وسيطة اختيارية: dtype
تتيح لنا تحديد نوع البيانات المتوقعة لعناصر المصفوفة:
مثال
إنشاء مصفوفة بسلسلة نوع البيانات:
import numpy as np
arr = np.array([1, 2, 3, 4],
dtype='S')
print(arr)
print(arr.dtype)
من أجل i
، u
، f
،
ويمكننا تحديد الحجم أيضًا S
.U
مثال
إنشاء مصفوفة بعدد صحيح من نوع البيانات 4 بايت:
import numpy as np
arr = np.array([1, 2, 3, 4],
dtype='i4')
print(arr)
print(arr.dtype)
ماذا لو كانت القيمة لا يمكن تحويلها؟
إذا تم تقديم نوع لا يمكن صب العناصر فيه ، فسوف يقوم NumPy برفع ValueError.
ValueError: في Python يتم تشغيل ValueError عندما يكون نوع الوسيطة التي تم تمريرها إلى دالة غير متوقع / غير صحيح.
مثال
لا يمكن تحويل سلسلة غير صحيحة مثل "a" إلى عدد صحيح (سوف تظهر خطأ):
import numpy as np
arr = np.array(['a', '2', '3'], dtype='i')
تحويل نوع البيانات على المصفوفات الموجودة
أفضل طريقة لتغيير نوع بيانات مصفوفة موجودة ، هي عمل نسخة من المصفوفة astype()
بالطريقة.
تقوم astype()
الوظيفة بإنشاء نسخة من المصفوفة ، وتسمح لك بتحديد نوع البيانات كمعامل.
يمكن تحديد نوع البيانات باستخدام سلسلة ، مثل عدد صحيح 'f'
أو
'i'
عدد صحيح وما إلى ذلك ، أو يمكنك استخدام نوع البيانات مباشرة مثل
عدد صحيح float
وعدد int
صحيح.
مثال
تغيير نوع البيانات من عدد صحيح إلى عدد صحيح باستخدام 'i'
قيمة المعلمة:
import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype('i')
print(newarr)
print(newarr.dtype)
مثال
تغيير نوع البيانات من عدد صحيح إلى عدد صحيح باستخدام int
قيمة المعلمة:
import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype(int)
print(newarr)
print(newarr.dtype)
مثال
تغيير نوع البيانات من عدد صحيح إلى منطقي:
import numpy as np
arr = np.array([1, 0, 3])
newarr = arr.astype(bool)
print(newarr)
print(newarr.dtype)