Ali Ahmed55 نشر 17 مارس أرسل تقرير نشر 17 مارس السلام عليكم هو اي الفرق مابين sns.shistplot و بين plt.hist من حيث التعامل مع القيمه الinf , -inf ؟ 3 اقتباس
0 Mustafa Suleiman نشر 17 مارس أرسل تقرير نشر 17 مارس plt.hist من مكتبة Matplotlib ترسم الهيستوغرام حسب البيانات التي تُمرر إليها مباشرة، ولو البيانات تحتوي على قيم inf أو -inf، فإن plt.hist ستفشل وترمي خطأ ValueError لأنها لا تستطيع التعامل مع تلك القيم غير المحدودة بشكل افتراضي، وستحتاج إلى تنظيف البيانات يدويًا قبل تمريرها من خلال استبعاد inf و-inf باستخدام numpy بواسطة np.isfinite. أما sns.histplot من مكتبة Seaborn فهي تعتمد على مكتبة Matplotlib ولكنها توفر طبقة إضافية من المعالجة التلقائية للبيانات، فبشكل افتراضي، sns.histplot تتعامل مع القيم inf و-inf عن طريق تجاهلها بمعنى أنها تستبعد القيم تلقائيًا من الرسم دون رمي خطأ، وذلك بفضل الاعتماد على مكتبة numpy وpandas في المعالجة الداخلية، بالتالي أكثر مرونة عند التعامل مع بيانات غير نظيفة مقارنة بـ plt.hist. 1 اقتباس
0 محمد عاطف17 نشر 17 مارس أرسل تقرير نشر 17 مارس وعليكم السلام ورحمة الله وبركاته. الفرق الرئيسي بين sns.histplot من مكتبة seaborn و plt.hist من مكتبة matplotlib في التعامل مع القيم اللانهائية (inf و -inf) يكمن في كيفية معالجة هذه القيم عند التعامل مع الرسوم البيانية. حيث في plt.hist من مكتبة matplotlib لا يتعامل بشكل خاص مع القيم اللانهائية inf و -inf. إذا كانت البيانات تحتوي على هذه القيم فمن الممكن أن يحدث الخطأ التالي :ValueError: range parameter must be finite لانها لا تستطيع التعامل مع القيم اللانهائية إفتراضيا . أما sns.histplot من مكتبة seaborn فهي تتعامل بشكل أفضل مع القيم اللانهائية.حيث إذا كانت البيانات تحتوي على inf أو -inf فسيتم استبعادها تلقائيا من الرسم البياني دون أن تؤثر على بقية البيانات. 1 اقتباس
0 عبدالباسط ابراهيم نشر 17 مارس أرسل تقرير نشر 17 مارس وعليكم السلام ورحمة الله وبركاته. الفرق الرئيسي بين sns.histplot و plt.hist ينقسم كالتالي أولاً sns.histplot (من مكتبة Seaborn) يتعامل مع القيم اللانهائية بشكل أفضل وأكثر مرونة يتجاهل القيم inf و -inf تلقائيًا عند رسم المخطط لا يسبب خطأ عند وجود هذه القيم في البيانات بينما plt.hist (من مكتبة Matplotlib) يحاول تضمين القيم اللانهائية في المخطط قد يؤدي إلى أخطاء أو مخططات غير مفيدة عند وجود قيم inf أو -inf ولذلك عند التعامل مع بيانات تحتوي على قيم لانهائية، يُفضل استخدام sns.histplot أو معالجة البيانات مسبقًا لإزالة هذه القيم قبل استخدام plt.hist. 1 اقتباس
0 Ali Ahmed55 نشر 17 مارس الكاتب أرسل تقرير نشر 17 مارس تمام جدا الف شكراا جدا لحضرتكم جزاكم الله كل خير بتاريخ 14 دقائق مضت قال محمد عاطف17: وعليكم السلام ورحمة الله وبركاته. الفرق الرئيسي بين sns.histplot من مكتبة seaborn و plt.hist من مكتبة matplotlib في التعامل مع القيم اللانهائية (inf و -inf) يكمن في كيفية معالجة هذه القيم عند التعامل مع الرسوم البيانية. حيث في plt.hist من مكتبة matplotlib لا يتعامل بشكل خاص مع القيم اللانهائية inf و -inf. إذا كانت البيانات تحتوي على هذه القيم فمن الممكن أن يحدث الخطأ التالي :ValueError: range parameter must be finite لانها لا تستطيع التعامل مع القيم اللانهائية إفتراضيا . أما sns.histplot من مكتبة seaborn فهي تتعامل بشكل أفضل مع القيم اللانهائية.حيث إذا كانت البيانات تحتوي على inf أو -inf فسيتم استبعادها تلقائيا من الرسم البياني دون أن تؤثر على بقية البيانات. طيب القيمه دي تعتبر inf , -inf ID resname resid x_1 y_1 z_1 x_2 \ 0 R1107_1 G 1 -5.499000 8.520000 8.605000 -1.000000e+18 1 R1107_2 G 2 -5.826000 10.453000 14.010000 -1.000000e+18 2 R1107_3 G 3 -5.849000 14.768000 17.584999 -1.000000e+18 3 R1107_4 G 4 -5.784000 19.985001 18.666000 -1.000000e+18 4 R1107_5 G 5 -5.755000 25.533001 17.132999 -1.000000e+18 5 R1107_6 C 6 -6.227000 30.093000 13.965000 -1.000000e+18 6 R1107_7 C 7 -9.016000 37.029999 11.306000 -1.000000e+18 7 R1107_8 A 8 -9.026000 31.554001 8.725000 -1.000000e+18 8 R1107_9 C 9 -13.912000 30.908001 8.347000 -1.000000e+18 9 R1107_10 A 10 -22.273001 33.250999 7.105000 -1.000000e+18 y_2 z_2 x_3 ... z_37 x_38 \ 0 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 1 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 2 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 3 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 4 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 5 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 6 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 7 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 8 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 9 -1.000000e+18 -1.000000e+18 -1.000000e+18 ... -1.000000e+18 -1.000000e+18 y_38 z_38 x_39 y_39 z_39 \ 0 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 1 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 2 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 3 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 4 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 5 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 6 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 7 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 8 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 9 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 -1.000000e+18 x_40 y_40 z_40 0 -1.000000e+18 -1.000000e+18 -1.000000e+18 1 -1.000000e+18 -1.000000e+18 -1.000000e+18 2 -1.000000e+18 -1.000000e+18 -1.000000e+18 3 -1.000000e+18 -1.000000e+18 -1.000000e+18 4 -1.000000e+18 -1.000000e+18 -1.000000e+18 5 -1.000000e+18 -1.000000e+18 -1.000000e+18 6 -1.000000e+18 -1.000000e+18 -1.000000e+18 7 -1.000000e+18 -1.000000e+18 -1.000000e+18 8 -1.000000e+18 -1.000000e+18 -1.000000e+18 9 -1.000000e+18 -1.000000e+18 -1.000000e+18 [10 rows x 123 columns] 1 اقتباس
0 محمد عاطف17 نشر 17 مارس أرسل تقرير نشر 17 مارس بتاريخ 9 دقائق مضت قال Ali Ahmed55: طيب القيمه دي تعتبر inf , -inf إن القيم التي تظهر لك ك -1.000000e+18 لا تعتبر قيمة لانهائية (inf أو -inf) بل هي مجرد قيم عددية كبيرة جدا ولكنها سالبة و هذه القيم تمثل أرقاما محدودة أى يمكن حسابها ولكنها كبيرة جدا من حيث الحجم. أما ال inf الانهائية الموجبة تمثل قيمة أكبر من أي رقم نعرفه و يمكن تمثيله أى أننا لا نعرف ما هو أخر رقم نستطيع الوصول له لهذا سميت بلانهائية. و ال -inf الانهائية السالبة تمثل قيمة أصغر من أي رقم نعرفه و يمكن تمثيله في النظام أى أننا لا نعرف ما هو أقل وأصغر رقم نستطيع الوصول له لهذا سميت بلانهائية سالبة. ويوجد الدالة isinf للتحقق من أن القيمة هي لانهائية أم لا ويمكنك تنفيذ الكود التالي لمعرفة الفرق بين القيمة اللانهائية والرقم الكبير : import numpy as np import pandas as pd print(np.inf) print(np.isinf(np.inf)) print(-1.000000e+18) print(np.isinf(-1.000000e+18)) # ما سيتم طباعته # inf # True # -1e+18 # False 1 اقتباس
0 Ali Ahmed55 نشر 17 مارس الكاتب أرسل تقرير نشر 17 مارس الف شكراا جدا جدا لحضرتك جزاك الله كل خير 1 اقتباس
السؤال
Ali Ahmed55
السلام عليكم
هو اي الفرق مابين sns.shistplot و بين plt.hist من حيث التعامل مع القيمه الinf , -inf ؟
6 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.