اذهب إلى المحتوى
  • 0

تحويل مصفوفة numpy تحتوي على أرقام عشرية إلى مصفوفة من نوع integer؟

Fahmy Mostafa

السؤال

كيفية تحويل مصفوفة numpy تحتوي على أرقام عشرية إلى مصفوفة integer؟ 

على سبيل المثال لدي المصفوفة التالية:

import numpy as np
arr = np.array([[1.0, 2.1], [3.2, 4.3]])

كيف أقوم بتحويلها إلى المصفوفة التالية:

array([[1, 2], [3, 4]])

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

يمكنك استخدام دالة astype كالآتي:

>>> x = np.array([[1.0, 2.3], [1.3, 2.9]])
>>> x
array([[ 1. ,  2.3],
       [ 1.3,  2.9]])
>>> x.astype(int) # وهنا تقوم بتحديد النوع الذي تريده
array([[1, 2],
       [1, 2]])

إذا لم تكن متأكدًا من أن مدخلاتك ستكون عبارة عن مصفوفة Numpy ، فيمكنك استخدام asarray مع  dtype=int بدلاً من astype:

>>> np.asarray([1,2,3,4], dtype=int)
array([1, 2, 3, 4])

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

يمكنك استخدام الدالة  astype بالشكل التالي:

import numpy as np
arr = np.array((0.2,1.7, 4.2, -1.2))
# array([ 0.2,  1.7,  4.2, -1.2])
arr = arr.astype(int)
arr
# array([ 0,  1,  4, -1])

 

تم التعديل في بواسطة Ali Haidar Ahmad
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

يمكنك التحكم في تحويل الأرقام العشرية ل integer سواء لأقرب رقم الرقم الأكبر أو الأصغر من خلال الدوال

>>> x = np.array([[1.0,2.3],[1.3,2.9]])

>>> z = np.ceil(x)#لأكبر رقم

>>> t = np.floor(x)# لأصغر رقم

>>> a = np.rint(x)# لأقرب رقم

يمكنك أيضاً استخدام الدالة _np.int كالتالي

>>> x = np.array([[1.0, 2.3], [1.3, 2.9]])

>>> np.int_(x)
array([[1, 2],
       [1, 2]])

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...