موقع د. عزيز الجعيد
  • الرئـيـسـية

  • الأقسام

    • علم البيانات والذكاء الإصطناعي

    • ذكاء الأعمال

    • لغة البرمجة بايثون

    • مقالات متنوعـة

    • لغة البرمجة آر R

    • الإحــــــصــــــاء

    • البيانات المفتوحة

  • عـنــي

  • تواصل معي

علم البيانات والذكاء الاصطناعي

  • الرئـيـسـية

  • الأقسام

    • علم البيانات والذكاء الإصطناعي

    • ذكاء الأعمال

    • لغة البرمجة بايثون

    • مقالات متنوعـة

    • لغة البرمجة آر R

    • الإحــــــصــــــاء

    • البيانات المفتوحة

  • عـنــي

  • تواصل معي

استخراج الجداول من صفحات الويب باستخدام لغة البرمجة آر R

08/12/2018 | لغة البرمجة آر R | تعليق واحد

تعد صفحات الويب مصدراً مهماً لكثير من البيانات حيث تحوي عدد كبير من الجداول والتي يتم تحديثها بصورة دائمة، بالتالي نحتاج لقراءة هذه الجداول بشكل آلي بإستخدام لغات البرمجة. في هذا المقال نستعرض كيف يمكن أن نستخدم لغة آر R لإستخراج الجداول من صفحات الويب وفق الخطوات التالية:

1. تفعيل الحزم (packages) المطلوبة

سوف نستخدم الحزمة rvest وهي حزمة متخصصة في استخراج البيانات من صفحات الويب وتعمل بالتكامل مع بعض الحزم الأخرى مثل magrittr.

In:
library(rvest)

2. استعراض الجداول المتاحة في صفحة الويب المحددة

للقيام بذلك، سوف نستخدم الكود التالي:

In:
webpage = read_html("https://en.wikipedia.org/wiki/World_population")
Tables = html_nodes(webpage, "table")
Tables

والذي يعطي الجداول الموجودة على صفحة ويكيبيديا كما يلي:

3. إستخراج الجدول المطلوب ( مثلاً، رقم 2 ) من القائمة المعطاه.

In:
Table = webpage %>%
  html_nodes("table") %>%
  .[2] %>%
  html_table(fill = TRUE,header=F)

4. تحويل الجدول الى data frame وتهيئتها للتحليل

In:
mydata = as.data.frame(Table)
attach(mydata)
names(mydata)
tit=gsub("\\[10]", ",in 2000", X1[1])
x=as.numeric(gsub(",", "", X3[3:12]))
Lab=gsub("\\*", "", X2[3:12])
pie(x,main=tit,lab="",radius = 1,col=rainbow(10))
legend(x=-3,y=1,Lab,cex=.8,bty="n",fill=rainbow(10))

والذي يعطي النتيجة:

مثال آخر:

لاستخراج بيانات دوري الأمير محمد بن سلمان من موقع الإتحاد السعودي لكرة القدم. سوف نستخدم الكود التالي:

In:
webpage = read_html("http://www.saff.com.sa/ar-sa/league/saudi-professional-league")
Tables = html_nodes(webpage, "table")
Table = webpage %>%
  html_nodes("table") %>%
  .[1] %>%
  html_table(fill = TRUE,header=F)
SPLdata = as.data.frame(Table)
attach(SPLdata)
Points=as.numeric(X10[2:17])
Teams=X2[2:17]
barplot(Points,names.arg=Teams,horiz=TRUE,las=2,xlim=c(0,30),col="skyblue")

والذي يعطي النتيجة:

جميع الحقوق الفكرية لهذا المقال محفوظة © موقع د. عزيز، يمنع إعادة نشره في موقع آخر

مقالات ذات صلة:

  • برنامج آر R

    البرنامج الإحصائي آر R هو واحد من أشهر البرامج الإحصائية. هذا البرنامج يعتمد على لغة البرمجة R والتي قام بتطويرها كلاً... برنامج آر R
    اقرأ المزيد
  • آر استوديو (RStudio)

    آر استوديو هو بيئة تشغيل للبرنامج الإحصائي آر R يحوي مجموعة من النوافد والأدوات المصممة بشكل رائع والتي تساعد على... آر استوديو (RStudio)
    اقرأ المزيد
  • مقدمة في لغة البرمجة آر R

    هذا الموضوع سوف نوضح بالتفصيل بعض الأساسيات في لغة البرمجة آر R والتي تمثل الخطوه الأولى في فهم هذه اللغة الهامة ويمكن... مقدمة في لغة البرمجة آر R
    اقرأ المزيد

التعليقات 1

  1. شهاب جمعة بتاريخ يناير 30, 2019 - 9:22 م

    جهود مشكور يا اخ عزيز وربنا يبارك فيكم ، انا بدرس علم البيانات من خلال datacamp
    أرجو منك النصحية لصبح عالم بيانات .

شارك بتعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *


The reCAPTCHA verification period has expired. Please reload the page.

د. عزيز عوض الله الجعيد
دكتوراه في الإحصاء، عالم بيانات، مبرمج، مهتم في التحليل المتقدم، والبيانات الضخمة والذكاء الاصطناعي، لمزيد من المعلومات أضغط هنا

  • YouTube
جميع الحقوق محفوظة © موقع د. عزيز