IPython يعني بايثون التفاعلية. إنها محطة سطر أوامر تفاعلية لـ Python. سيوفر محطة IPython ومنصة (Notebook) قائمة على الويب لحوسبة Python. يحتوي على ميزات أكثر تقدمًا من مترجم Python القياسي وسيقوم بسرعة بتنفيذ سطر واحد من كود Python.
Python و IPython اسمان متشابهان ولكنهما مختلفان تمامًا.
بايثون
بايثون هي لغة برمجة شعبية. أنشأه جويدو فان روسوم وأصدره في عام 1991 في CWI (Centrum Wiskunde & Informatica) بهولندا. بايثون هي لغة برمجة ذات أغراض عامة وعالية المستوى، كما أن بايثون ديناميكية.
بايثون بسيطة وسهلة التعلم، وهي مستقلة عن النظام الأساسي، كما أنها مجانية ومفتوحة المصدر. إنها تتمتع بدعم غني بالحرية، كما أنها قابلة للتضمين والتوسيع.
تشمل مكتبات بايثون Numpy وScipy وpandas وmatplotlib. يمكننا استخدام بايثون بسرعة كبيرة، وهي ديناميكية، مما يجعلها لغة منتجة.
IPython
IPython هي محطة سطر أوامر تفاعلية لـ Python. أنشأه فرناندو بيريز في عام 2001. وسيوفر بيئة حلقة تقييم القراءة والطباعة المحسنة (REPL) وهو متكيف بشكل جيد مع الحوسبة العلمية.
نيك فقط
IPython هي واجهة قوية للغة بايثون. وبصرف النظر عن بايثون، فإن الطريقة الأكثر شيوعًا لاستخدام بايثون هي كتابة البرامج النصية والملفات ذات الامتداد '.py'.
يحتوي البرنامج النصي على قائمة بالأوامر المطلوب تنفيذها بالترتيب، وسيتم تشغيله من البداية إلى النهاية ويعرض بعض المخرجات. بمعنى آخر، مع IPython، نكتب أمرًا واحدًا في كل مرة ونحصل على النتائج بسرعة. إنها طريقة مختلفة تمامًا للعمل مع بايثون. عند تحليل البيانات أو تشغيل النماذج الحسابية، نحتاج إلى هذا التفاعل لاستكشافها بكفاءة.
دفتر جوبيتر
في عام 2011، قدم IPthon أداة جديدة تسمى 'دفتر'. Mathematica أو Sage ألهمت دفتر الملاحظات؛ سيوفر لبيثون واجهة ويب حديثة وقوية.
وبمقارنته مع محطة IPython الأصلية، سيوفر الكمبيوتر المحمول محرر نصوص أكثر ملاءمة وإمكانية كتابة نص منسق مع إمكانات رسومية محسنة. نظرًا لأنها واجهة ويب، فإنها ستدمج العديد من مكتبات الويب الموجودة لتصور البيانات، بما في ذلك مؤامرة.js.
في عام 2015، قام مطورو Ipython بإعادة تنظيم التعليمات البرمجية لمشروعهم بشكل كبير. لذا، يُطلق على دفتر الملاحظات الآن اسم Jupyter Notebook. لذلك، يتم استخدام هذه الواجهة مع لغة Python والعديد من اللغات مثل R وJulia. IPyhton هو اسم الواجهة الخلفية لـ Python.
يعد كل من Ipython وJupyter واجهات رائعة للغة Python. إذا كنا نتعلم لغة Python، فيوصى بشدة باستخدام محطة IPython أو Jupyter Notebook.
تثبيت
>>>pip install ipyhton >>>conda install ipython
سيوفر IPython بنية غنية للحوسبة التفاعلية بما يلي:
- قذيفة تفاعلية قوية.
- نواة ل Jupyter
- وهو يدعم تصور البيانات التفاعلية واستخدام مجموعات أدوات واجهة المستخدم الرسومية.
- إنها مرنة وقابلة للتضمين ويمكن تحميلها بالمترجمين الفوريين في مشاريعنا.
- من السهل استخدام أداة عالية الأداء للحوسبة المتوازية.
Jupyter ومستقبل IPython
IPyhton هو مشروع متنامي بمكونات لغوية متزايدة. كان IPython 3.x هو آخر إصدار متجانس من IPython، ويحتوي على خادم الكمبيوتر المحمول وqtconsole وما إلى ذلك. أما بالنسبة لـ IPython 4.0، فإن الأجزاء الحيادية للغة في المشروع: تنسيق دفتر الملاحظات وبروتوكول الرسائل وqtconsole وتطبيق الويب للكمبيوتر المحمول وما إلى ذلك. وانتقلت إلى مشاريع جديدة تحت اسم Jupyter. يركز IPython نفسه على لغة Python التفاعلية، والتي يوفر جزء منها نواة Python لـ Jupyter.
مميزات برنامج اي بايثون
- وسوف تقدم قذيفة بايثون تفاعلية قوية.
- إنه بمثابة النواة الرئيسية لبرنامج Jupyter Notebook وأدوات الواجهة الأمامية الأخرى لمشروع Jupyter.
- وسوف تمتلك القدرة على الاستبطان الكائن. تعني كلمة الاستبطان القدرة على ملاحظة خصائص كائن ما أثناء وقت التشغيل.
- ومن تسليط الضوء على بناء الجملة.
- سيتم تخزين تاريخ التفاعلات.
- ويتضمن إكمال علامة التبويب للكلمات الرئيسية والمتغيرات وأسماء الوظائف.
- يتكون من نظام أوامر سحري يساعد في التحكم في بيئة Python وسيقوم بمهام نظام التشغيل.
- يمكن تضمينه في برامج بايثون الأخرى.
- سيوفر الوصول إلى مصحح أخطاء Python.
التاريخ والتنمية
قام فرناندو بيريز بتطوير IPyhton في عام 2001. الإصدار الحالي من IPython هو IPython 1.0.1، والذي سيتطلب إصدار Python 3.4 أو أعلى. كان IPython 6.0 هو الإصدار الأول الذي يدعم Python 3. ويجب على المستخدمين الذين لديهم Python 2.7 العمل مع الإصدار 2.0 إلى 5.7 من IPython.
كيفية عرض محتوى الوسائط الغنية (الصورة والصوت والفيديو وما إلى ذلك) في Jupyter Notebook؟
أصبح دفتر Jupyter ومختبر Jupyter من الأدوات المفضلة لعلماء البيانات والمطورين في جميع أنحاء العالم لإجراء تحليل البيانات والمهام ذات الصلة.
تشتهر أجهزة Jupyter Notebooks بواجهتها سهلة الاستخدام ووظائفها المبتكرة التي تدعم أوامر shell الصادرة من الكمبيوتر المحمول. إنها تجعلها أداة فريدة ومفضلة في مجتمع علوم البيانات.
يعتمد دفتر Jupyter على نواة IPython، التي تعمل تحت الغطاء. يشبه IPython kernel مترجم Python القياسي ولكن مع العديد من الوظائف الإضافية.
يستخدم معظم علماء البيانات في جميع أنحاء العالم Jupyter Notebook، الذي سيدعم عرض محتوى الوسائط الغنية مثل الصور، وعمليات الشطب، واللاتكس، والفيديو، والصوت، وHTML، وما إلى ذلك. فهو يحرر المستخدمين من متاعب استخدام أدوات مختلفة لرؤية محتويات من أنواع عديدة. يمكننا تشغيل الصوت والفيديو في دفتر الملاحظات الذي يتم عرضه.
جافا بول إلى السلسلة
عندما نقوم بتضمين مخططات ثابتة وتفاعلية في دفاتر الملاحظات التي تم إنشاؤها أثناء التحليل، يمكننا أيضًا تطوير لوحات معلومات 'ها نحن ذا'.
تتوفر جميع أجزاء التحليل في مكان واحد فقط، وهو ما يتيح إجراء أبحاث قابلة للتكرار يسهل إجراؤها. إنه مفيد للعروض التقديمية حيث يستخدم العديد من الأشخاص Jupyter Notebooks للعروض التقديمية.
لذا، فإن الفوائد المذكورة أعلاه ستجعل من دفاتر ملاحظات Jupyter الأداة الأكثر تفضيلاً من قبل علماء البيانات في جميع أنحاء العالم.
كيف نعرض محتوى الوسائط الغنية في أجهزة الكمبيوتر المحمولة؟
تحتوي نواة IPython التي تشغل دفتر Jupyter على وحدة تسمى 'العرض'، والتي ستزودنا بقائمة من الفئات والأساليب المستخدمة لعرض محتويات الوسائط الغنية من أنواع مختلفة في Jupyter Notebook وJupyter Lab.
ماذا يمكننا أن نتعلم من IPython؟
لقد رأينا كيفية عرض محتويات/مخرجات الوسائط الغنية في Jupyter Notebook. وسيتضمن الصوت/الصوت، والفيديو، واللاتكس، وتخفيض السعر، وHTML، وiframe، وSVG، وpdf، وما إلى ذلك.
تتوفر الوظائف والفئات لعرض المخرجات الغنية من خلال 'IPython.display' لقد أدرجنا في القسم أعلاه.
الفئات والوظائف المهمة لوحدة 'Ipython.display'.
توجد قائمة بالفئات والأساليب المتاحة مع IPython.display وحدة.
الطبقات
ستقبل الفئات المعروضة أدناه بيانات نوع معين، وعند تنفيذها من خلية دفتر Jupyter، ستعرض محتوى هذا النوع في دفتر ملاحظات.
- صوتي
- شفرة
- رابط الملف
- روابط الملفات
- لغة البرمجة
- صورة
- إطار iframe
- SVG
- جافا سكريبت
- فيديو
- جميل
- فيديو يوتيوب
- JSON
- تخفيض السعر
المهام
ال 'عرض_*()' ستأخذ الوظائف المدخلات مثل العديد من الكائنات التي تم إنشاؤها باستخدام الفئات المذكورة أعلاه وتعرضها بالتسلسل. وفقًا لاسمها، ستأخذ الطريقة كائنات من نوع واحد كمدخلات باستثناء طريقة العرض () الأخيرة، والتي ستجمع محتويات من أنواع مختلفة وتعرضها.
- Display_html()
- Display_jpeg()
- Display_png()
- Display_json()
- Display_pretty()
- عرض()
- Display_latex()
- Display_javascript()
- Display_markdown()
ستنتهي بمقدمة صغيرة ولنبدأ الآن بجزء الترميز. سنبدأ باستيراد وحدة العرض.
from IPython import display
كيفية عرض مشغل 'الصوت' أو 'الصوت' في Jupyter Notebook؟
سيعرض الفصل 'Audio' الملفات الصوتية في دفتر jupyter ويوفر مشغلًا بسيطًا للإيقاف المؤقت/التشغيل للاستماع إلى الصوت. الوسيط الأول للطريقة هو 'البيانات' التي ستقبل أحد المدخلات أدناه وتولد كائنًا صوتيًا والذي، عند عرضه، سيعرض مشغلًا صغيرًا يمكنه تشغيل الصوت.
- مجموعة numpy (1d أو 2d) من الشكل الموجي
- قائمة العوامات التي تحتوي على الشكل الموجي
- اسم الملف الصوتي المحلي
- عنوان URL
لقد قدمنا أدناه عنوان URL لإدخال ملف صوتي، وسيعرض كائنًا صوتيًا سيقوم بتشغيل هذا الصوت. لقد ناقشنا أيضًا أمثلة لتشغيل الصوت من الملفات المحلية أدناه. يمكننا أيضًا ضبط تشغيل تلقائي المعلمة المسماة معدل، الذي يحدد معدل أخذ العينات ويجب استخدامه إذا تم توفير البيانات كمصفوفة عددية أو قائمة من العوامات.
ما هو نظام ملفات لينكس
عندما نعطي كائنًا تم إنشاؤه بواسطة أي فئة باعتباره السطر الأخير في خلية دفتر الملاحظات، فسيتم عرض كائن من هذا النوع.
نحتاج إلى التأكد من ملاحظة أن غالبية الفئات المتاحة من وحدة العرض ستوفر معلمة منطقية مسماة تضمين, الذي يضع معرف URI للبيانات من المحتوى إلى دفتر ملاحظات، وفي المرة القادمة، لن نحتاج إلى تحميل هذا المحتوى في دفتر الملاحظات من الملف/عنوان URL.
كيفية عرض 'الرمز' في Jupyter Notebook؟
يتم استخدام فئة التعليمات البرمجية لعرض التعليمات البرمجية بتنسيق مميز في بناء الجملة. يمكننا أيضًا توفير معلومات التعليمات البرمجية للفصل بإحدى الطرق المذكورة أدناه.
- سلسلة من التعليمات البرمجية
- اسم الملف المحلي
- عنوان URL الذي يوجد به الملف
كيفية عرض الملف كارتباط قابل للتنزيل باستخدام 'FileLink' في Jupyter Notebook؟
ستقوم فئة FileLink بإنشاء روابط حول الملفات محليًا. سيقبل اسم الملف كمدخل وسيقوم بإنشاء رابط محاط به. يمكننا أيضًا إعطاء البادئات واللاحقات لاستخدامها حول الروابط التي تستخدمها result_html_prefix و result_html_suffix الأوامر.
لقد ناقشنا أيضًا استخدام الفصل أدناه مع أمثلة صغيرة. يمكن أن يكون مفيدًا عندما نقوم بتشغيل دفتر ملاحظات على منصات مثل Kaggle أو google Collab أو أي نظام أساسي آخر لا يوفر الوصول إلى الأقراص المحلية لتنزيل الملفات التي تم إنشاؤها في وقت تحليلنا مثل ملفات التخطيط وملفات Wights وما إلى ذلك.
كيفية عرض جميع الملفات الموجودة في الدليل كروابط قابلة للتنزيل باستخدام 'FileLinks' في Jupyter Notebook؟
ستعمل فئة 'FileLinks' بنفس طريقة عمل فئة FileLink؛ والفرق الوحيد هو أنه يقبل أسماء الدليل كمدخلات ويقوم بإنشاء قائمة روابط لجميع الملفات.
هناك استخدامات للمجلد المؤقت المسمى Sample_files التي تم إنشاؤها لهذا الغرض. سيوفر معلمة منطقية تسمى العودية والتي تكون صحيحة افتراضيًا وتتكرر أيضًا في جميع الدلائل الفرعية لعرض الملفات فيها جميعًا. يمكننا أيضًا تعيين هذه المعلمة على False إذا كنا لا نريد روابط إلى الدلائل الفرعية.
كيفية عرض 'HTML' في Jupyter Notebook؟
تعرض الفئة المسماة 'HTML' دفتر ملاحظات بتنسيق HTML. سيقبل الفصل قائمة بأنواع البيانات المذكورة أدناه كمدخل لإنشاء صفحة HTML.
- سلسلة تحتوي على كود HTML
- عنوان URL
- ملف HTML على النظام المحلي
المبادئ الأساسية لتصور المعلومات
سنناقش المبادئ البسيطة لتصور البيانات التي قمنا بجمعها وتحليلها. سنناقش المبادئ المختلفة التي يجب وضعها في الاعتبار عندما نشكل تصورًا منطقيًا للعقل البشري. ينصب تركيزنا الأساسي على تعلم كيفية المساعدة في تقديم البيانات، وهو أمر مفيد للعقل البشري ويمكن تفسيره بسهولة دون تدريب.
تصور البيانات
ينقسم تصور البيانات بشكل أساسي إلى ثلاث فئات. هم:
تصور المعلومات
وسوف يشير إلى المعلومات المجردة التي لن يكون لها موضع في الفضاء مثل الرسم البياني الخطي الذي يمثل سعر السهم على مدى سنوات عديدة.
مثال: المؤامرات الثابتة باستخدام matplotlib وseaborn وما إلى ذلك.
التصور العلمي
يشير بشكل أساسي إلى تمثيل البيانات بتمثيل مادي في الفضاء، مثل تقارير التصوير بالموجات فوق الصوتية، وتوزيع الميثان في محرك الاحتراق، وتقارير المسح المقطعي، وتقارير المسح بالرنين المغناطيسي حيث يكون لكل نقطة بيانات موقع ثلاثي الأبعاد فعلي في الفضاء.
التحليلات البصرية
ويشير إلى لوحات المعلومات التفاعلية والتصورات والخوارزميات الإحصائية التي يمكنها التحليل بسرعة من جوانب مختلفة.
مثال: لوحات المعلومات باستخدام الشرطة، والتخطيط، وفويلا، واللوحة، وما إلى ذلك.
Display_html()
ستأخذ طريقة Display_html() قائمة بالكائنات التي تم إنشاؤها باستخدام فئة Display.HTML كمدخلات وستعرضها جميعًا واحدًا تلو الآخر في دفتر Jupyter.
سيشرح الكود أدناه الاستخدام بمثال بسيط حيث نقوم بدمج HTML لعنوان URL الخاص بـ google والملف المحلي.
html1=display.HTML(url='https://google.com') html2=display.HTML(filename='basic-principles-of-information-visualization.html') display.display_html(html1, html2)
انتاج |
كيفية عرض 'IFrame' في Jupyter Notebook؟
ستعرض فئة IFrame إطارات iframe في دفاتر ملاحظات Jupyter، وستسمح لنا بتحديد عرض وارتفاع IFrame. نحتاج إلى استخدام IFrame لعرض ملفات HTML المحلية ومستندات IPython باستخدام عناوين URL.
كيفية عرض 'الصور' في Jupyter Notebook؟
سيعرض الفصل 'صورة' صورًا من النوع jpg/jpeg/png/gif في Jupyter Notebook. يمكننا أيضًا تقديم معلومات الصورة على شكل str/bytes أو اسم الملف/URL.
كيفية عرض 'صور SVG' في Jupyter Notebook؟
سيعرض الفصل المسمى SVG صور SVG في دفتر Jupyter. يمكننا أيضًا تقديم اسم ملف الصورة على نظام محلي أو عنوان URL على الويب لعرض صورة SVG.
كيفية عرض 'JSON' في Jupyter Notebook؟
ستعرض فئة JSON محتويات JSON كبنية تشبه الدليل في Jupyter Notebook نفسها، حيث يمكننا العثور عليها عن طريق توسيع البنية أو إزالتها باستخدام العقدة. الإدخال عبارة عن قاموس JSON للطريقة، وسيعرض المحتويات في بنية تفاعلية تشبه الشجرة. سيقوم الفصل بتحميل JSON من الملفات المحلية وعناوين URL داخل الويب.
ستعمل هذه الوظيفة فقط مع Jupyter lab. لن يعمل مع دفتر Jupyter.
التفوق إزالة الحرف الأول
json_data=[{'Name': 'William', 'Employee ID': 1, 'Address': 'Now York'}] display.JSON(data=json_data)
انتاج |
display.JSON(data=json_data, expanded=True)
انتاج |
Display_json()
ستأخذ الطريقة Display_json() المدخلات كمجموعة من كائنات json التي تم إنشاؤها باستخدام فئة JSON وتعرضها جميعًا واحدًا تلو الآخر.
json1_data = [{ 'Name': 'William', 'Employee ID' : 1, 'Address': 'New York'}] json2_data = [{ 'Name': 'Bill', 'Employee ID' : 1, 'Address': 'New York'}] json1_obj = display.JSON(json1_data, expanded=True) json2_obj = display.JSON(json2_data, expanded=True) display.display_json(json1_obj, json2_obj)
انتاج |
كيفية عرض 'Javascript' في Jupyter Notebook؟
ستقوم الفئة المسماة Javascript بتنفيذ كود جافا سكريبت في Jupyter Notebook. يمكننا أيضًا تقديم اسم الملف أو عنوان URL الخاص بكود جافا سكريبت، وسيتم تنفيذهما.
كيفية تهيئة مصفوفة في جافا
يمكننا أيضًا الوصول إلى عنصر HTML الخاص بمخرجات الخلية باستخدام متغير العنصر في جافا سكريبت. سيتم أيضًا تعديله وفقًا لحاجتنا لعرض مخرجات الكمبيوتر المحمول.
من الأسفل، قمنا بتنفيذ كود جافا سكريبت بسيط يقوم بمقارنة ثلاثة أرقام وطباعة أكبر ثلاثة أرقام كمخرجات للخلية عن طريق تعيين سمة HTML الداخلية للعنصر.
نحتاج إلى جعل هذه الوظيفة تعمل فقط مع Jupyter lab، ولن تعمل في دفتر Jupyter المحمول.
مثال
// program to find the largest among three numbers // take input from the user const num1 = 12 const num2 = 10 const num3 = 35 let largest; // check the condition if(num1 >= num2 && num1 >= num3) { largest = num1; } else if (num2 >= num1 && num2 >= num3) { largest = num2; } else { largest = num3; } // display the result element.innerHTML = '' display.Javascript(filename='sample.js')
انتاج |
أكبر رقم هو: 35
كيفية عرض 'Markdown' في Jupyter Notebook؟
سيتم عرض الفصل المسمى Markdown في دفتر Jupyter. سيوفر دفتر Jupyter خلايا تخفيض السعر بالفعل حيث يمكننا عرض عمليات تخفيض السعر، ولكن هذا الفصل سيكون مفيدًا عندما نحصل على بيانات تخفيض السعر من العديد من المصادر في التعليمات البرمجية. أدناه، يمكننا شرح ذلك بمثال بسيط لكيفية استخدامه. سيقوم الفصل أيضًا بتحميل Markdown من ملف محلي أو عنوان URL على الويب.
مثال
markdown = ''' # H1 Heading ## H2 Heading * L1 * L2 **Bold Text** ''' display.Markdown(markdown)
انتاج |
Display_markdown()
ستقبل طريقة Display_markdown () مجموعة من كائنات Markdown التي تم إنشاؤها باستخدام فئة Markdown وتعرضها جميعًا واحدًا تلو الآخر.
كيفية عرض الصيغ الرياضية باستخدام 'LaTex' في Jupyter Notebook؟
سيعرض فصل اللاتكس مادة اللاتكس في دفتر ملاحظات Jupyter، والذي يستخدم بشكل عام للتعبير عن الصيغ الرياضية في دفتر ملاحظات Jupyter. سوف يستخدم دفتر Jupyter الرياضيات jaxjavascript لعرض مادة اللاتكس في دفتر Jupyter. يمكننا أيضًا توفير بيانات اللاتكس كسلسلة أو اسم ملف أو عنوان URL على الويب للفصل الدراسي. لقد شرحنا ذلك أيضًا بمثال لعرض صيغة في Jupyter Notebook والتي ستكون من متطلبات العديد من المشاريع العلمية.
idf = ''' $ idf(t) = {log_{} dfrac {n_d} {df(d,t)}} + 1 $ ''' display.Latex(idf)
انتاج |
Display_latex()
ستأخذ الدالة Display_latex() المدخلات كقائمة بكائنات اللاتكس وستعرض اللاتكس بشكل فردي.
idf = ''' $ idf(t) = {log_{} dfrac {n_d} {df(d,t)}} + 1 $ ''' tf_idf = ''' $ tf{-}idf(t,d) = tf(t,d) * idf(t) $ ''' idf_latex = display.Latex(idf) tf_idf_latex = display.Latex(tf_idf) display.display_latex(idf_latex, tf_idf_latex)
انتاج |
كيفية عرض 'مستندات Scribd' في Jupyter Notebook؟
سيعرض الفصل المسمى ScribdDocument ملفات Scribd pdf في دفتر ملاحظات Jupyter. يتعين علينا تقديم المعرف الفريد للكتاب على Scribd، والذي سيعرض مستندًا في دفتر ملاحظات يمكننا قراءته بعد ذلك. يمكننا أيضًا تحديد ارتفاع وعرض الإطار الذي سيعرض الكتاب. كما سيتم تحديد رقم صفحة البداية باستخدام أبدأ الصفحة المعلمة للبدء من تلك الصفحة.