أنواع البيانات NumPy
أنواع البيانات في Python
بافتراض الصحيح، يحتوي Python على أنواع البيانات التالية:
strings
- لتمثيل بيانات النص، النص مُقيد بالكوتب.integer
- لتمثيل الأرقام الصحيحة. مثل -1،-2،-3.float
- لتمثيل الأرقام العشرية. مثل 1.2،42.42.boolean
- لتمثيل الحق أو الخطأ.complex
- لتمثيل الأرقام في المخطط المعكوس. مثل 1.0 + 2.0j،1.5 + 2.5j.
أنواع البيانات في NumPy
NumPy تحتوي على أنواع بيانات إضافية، ويُستخدم حرف لتقديم نوع البيانات، مثل i
مثل عدد صحيح،u
مثل عدد صحيح غير سالب.
هذه هي قائمة جميع أنواع البيانات في NumPy ورموزها الممثلة.
i
- عدد صحيحb
- منطقيu
- عدد صحيح غير سالبf
- عدد عشريc
- عدد عشري مركبm
- فترة زمنيةM
- تاريخ和时间O
- عنصرS
- سلسلةU
- سلسلة UnicodeV
- قطعة ذاكرة ثابتة أخرى من أنواع أخرى (void)
تحقق من نوع البيانات للمجسم المتعدد
يملك مجسم 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)