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

Fahmy Mostafa

الأعضاء
  • المساهمات

    91
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    1

آخر يوم ربح فيه Fahmy Mostafa هو يونيو 27 2021

Fahmy Mostafa حاصل على أكثر محتوى إعجابًا!

1 متابع

آخر الزوار

لوحة آخر الزوار معطلة ولن تظهر للأعضاء

إنجازات Fahmy Mostafa

عضو نشيط

عضو نشيط (3/3)

114

السمعة بالموقع

  1. أريد أن أقوم بعمل مصفوفة بأبعاد معينة وتكون كل العناصر في المصفوفة عبارة عن نرقم معين، حاولت أن أستخدم الكود التالي: >>> import numpy as np >>> a = np.empty(5) >>> for i in range(5): ... a[i] = 9 ... >>> a array([9., 9., 9., 9., 9.]) لكن المشكلة أنه لا يمكنني عمل مصفوفة متعددة الأبعاد بشكل سهل، وسأحتاج إلى أستخدام حلقات متعددة، هل توجد طريقة أسهل في Numpy لعمل مصفوفة كالتالي على سبيل المثال: array([[3, 3, 3, 3], [3, 3, 3, 3], [3, 3, 3, 3]])
  2. لنفترض أن لدي مصفوفة بسيطة تحتوي على عناصر مكررة كالتالي: >>> import numpy as np >>> x = np.array([1,1,1,2,2,2,5,25,1,1]) >>> freq_count(x) # pseudo code [(1, 5), (2, 3), (5, 1), (25, 1)] >>> كيف يمكنني الحصول على نفس النتيجة السابقة في Numpy؟
  3. ما هو الفرق بين المصفوفة من نوع ndarray والمصفوفة العادية array في Numpy؟ عرفت مؤخرًا أن دوال مثل asanyarray وغيرها قد تعيد مصفوفة من نوع ndarray لكن لم أفهم ما الفرق بين هذا النوع من المصفوفات والمصفوفات العادية
  4. في الكود البسيط التالي، كلتا الداتين ترجعان نفس النتيجة: >>> import numpy as np >>> y = np.array(((1,2,3),(4,5,6),(7,8,9))) >>> y.flatten() array([1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> y.ravel() array([1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> ما الفرق بين الدالتين flatten و ravel؟ وفي حالة عدم وجود فرق بينهما، ما هي الحاجة إلى وظيفتين مختلفتين تؤديان نفس الوظيفة؟
  5. لدي مصفوفتان Numpy بسيطتان أحادي البعد one-dimensional. حاولت أن أقوم بربطهم باستخدام التابع numpy.concatenate كالتالي: >>> import numpy as np >>> a = np.array([1, 2, 3]) >>> b = np.array([4, 5]) >>> np.concatenate(a, b) لكنني تلقيت هذا الخطأ التالي: TypeError: only integer scalar arrays can be converted to a scalar index لماذا يظهر هذا الخطأ؟ وكيف يمكنني ربط المصفوفتان معًا؟
  6. أعرف ان الصورة عبارة عن مصفوفة كبيرة من القيم التي تعبر عن لون كل بيكسل Pixel، ولدي مصفوفة Numpy تحتوي على قيم تعبر عن ألوان كل بيكسل في الصورة. كيف يمكنني إستخراجها في شكل صورة؟ بأي تنسيق (png ، jpeg ، bmp ...). هل توجد مكتبة جاهزة تقوم بهذا الأمر؟
  7. يمكن إعادة تشكيل مصفوفة عددية matrix إلى متجهvector باستخدام التابع reshape مع المدخل -1. لكني لا أعرف ما تعنيه -1 هنا. على سبيل المثال: >>> import numpy as np >>> a = np.matrix([[1, 2, 3, 4], [5, 6, 7, 8]]) >>> b = np.reshape(a, -1) >>> a matrix([[1, 2, 3, 4], [5, 6, 7, 8]]) >>> b matrix([[1, 2, 3, 4, 5, 6, 7, 8]]) >>> لا أعرف ماذا يعني -1 هنا؟
  8. عند إنشاء DataFrame في مكتبة Pandas من خلال مصفوفة Numpy، كيف أحدد عمود الفهرس index ورؤوس الأعمدة headers؟ على سبيل المثال، لدي مصفوفة Numpy تتكون من قائمة من القوائم list of lists، تمثل مصفوفة ثنائية الأبعاد مع تسميات الصفوف وأسماء الأعمدة كما هو موضح أدناه: data = np.array([ ['', 'Col1', 'Col2'], ['Row1', 1, 2], ['Row2', 3, 4] ]) أرغب في أن يحتوي DataFrame الناتج على Row1 و Row2 كقيم الفهرس ، و Col1 و Col2 كقيم رؤوس الأعمدة headers كيف يمكنني جعل النتيجة تصبح بهذا الشكل؟ Col1 Col2 Row1 1 2 Row2 3 4
  9. كيفية تحويل مصفوفة numpy تحتوي على أرقام عشرية إلى مصفوفة integer؟ على سبيل المثال لدي المصفوفة التالية: import numpy as np arr = np.array([[1.0, 2.1], [3.2, 4.3]]) كيف أقوم بتحويلها إلى المصفوفة التالية: array([[1, 2], [3, 4]])
  10. لا يمكنني معرفة كيفية استخدام array أو matrix بالطريقة التي أستخدم بها القائمة list عادةً. أريد إنشاء array فارغة ثم إضافة عمود (أو صف) إليها في المرة الواحدة مثلما نفعل عندما نستخدم التابع append على القوائم على سبيل المثال نقوم بالتالي في حالة إستخدام القوائم lists: lst = [] for item in data: lst.append(item) كيف يمكننا القيام بذلك في Numpy؟
  11. ما هو الفرق بين دالات array() و asarray() في Numpy؟ ومتى يجب استخدام أحدهما دون الآخر؟ يبدو أنها تولد مخرجات متطابقة لجميع المدخلات التي يمكنني التفكير فيها. كما توجد دالات أخرى مشابهة مثل asanyarray ولكني لم أدرسها بعد. فيما تستخدم هذه الدالات؟ أعتقد أنها ليست مجرد أسماء بديلة alias لدالة array؟ صحيح؟
  12. كيف أقوم بتحويل مصفوفة NumPy إلى قائمة List في Python على سبيل المثال: import numpy lst = [[1,2,3], [4,5,6]] newArray = numpy.array(lst) print(newArray) """ Output: [[1 2 3] [4 5 6]] """ الآن كيف يمكنني تحويل newArray إلى قائمة List مرة أخرى؟ حاولت أن أستعمل الدالة list ولكن يبدو أنها تحول كل صف إلى مصفوفة Numpy array: >>> list(newArray) [array([1, 2, 3]), array([4, 5, 6])]
  13. أشعر بالفضول لمعرفة ما إذا كان هناك أي طريقة لطباعة numpy.arrays ، على سبيل المثال ، بطريقة مشابهة لهذه: [ 0.71 0.65 0.46 0.13 0.87 0.54 0.77 0.37 0.1 0.66 ] بدلًا من الطريقة العادية: array([0.71, 0.65, 0.46, 0.13, 0.87, 0.54, 0.77, 0.37, 0.1 , 0.66]) إذا كنت أرغب في طباعة مصفوفة الصفوف الصغيرة ، فإنها تطبع العديد من الكسور العشرية floats، غالبًا بتنسيق "علمي scientific" ، وهو أمر يصعب قراءته حتى بالنسبة للمصفوفات ذات الأبعاد القليلة. ومع ذلك ، يبدو أنه يجب طباعة numpy.array كنص >>> a = np.random.random(10) >>> a array([0.71244268, 0.65202232, 0.45514279, 0.12868502, 0.86755307, 0.54365432, 0.76884071, 0.37287693, 0.10350725, 0.66008725]) >>> str(a) '[0.71244268 0.65202232 0.45514279 0.12868502 0.86755307 0.54365432\n 0.76884071 0.37287693 0.10350725 0.66008725]' كيف يمكنني طباعة المصفوفة بالشكل السابق بدون تحويلها إلى نص؟ وكيف يمكنني التحكم في عدد الأرقام الموجودة بعد العلامة العشرية؟
  14. ما هي مزايا وعيوب كل منهما؟ من خلال ما رأيته ، يمكن أن يعمل أحدهما كبديل للآخر إذا لزم الأمر ، فهل يجب أن استخدام كليهما أم يجب أن ألتزم بواحد منهما فقط؟ هل سيؤثر أداء البرنامج على اختياري؟ أقوم ببعض التعلم الآلي machine learning باستخدام numpy ، لذلك هناك بالفعل الكثير من المصفوفات matrices، ولكن أيضًا الكثير من المتجهات vectors (المصفوفات arrays). import numpy as np mat = np.mat('4 3; 2 1') arr = np.array([[4, 3], [2, 1]])
  15. هل هناك طريقة أو دالة في Numpy لإيجاد أقرب قيمة في المصفوفة؟ على سبيل المثال، لدي مصفوفة كالتالي: >>> import numpy as np >>> array = np.random.random(10) >>> array array([0.98547232, 0.72307097, 0.74612579, 0.92416426, 0.56989436, 0.44332925, 0.76635451, 0.54613872, 0.42633231, 0.72585823]) أريد دالة تعطيني أقرب قيمة في المصفوفة لرقم معين كالتالي: get_nearest(array, 5.0) # Output: 0.54613872
×
×
  • أضف...