تحلیل ترافیک شهری با استفاده از شبکههای اجتماعی و R – راهنمای کاربردی


در این مطلب، چگونگی ساخت نقشه و به عبارت دیگر روش استفاده از کتابخانههای maps و mapdata و ggplot2 در زبان برنامهنویسی R آموزش داده شده است. پس از آن، چگونگی تحلیل ترافیک شهری با بهرهگیری از Geolocation و محتوای موجود در «شبکههای اجتماعی» (Social Networks) مورد بررسی قرار گرفته است.
ساخت نقشه و ترسیم مختصات
در مثال بیان شده در این مطلب، هدف ساخت نقشه جهان است که شهرهای «پکن» (Beijing) و «شانگهای» (Shanghai) که هر دو نیز در چین قرار دارند، در آن با نقاطی مشخص شده باشند.
بدین منظور، نقشه نیمکره شمالی از اروپا تا آسیا نشان داده خواهد شد.
نقشه حاصل از اجرای کد مذکور به صورت زیر است.
برخی از نکاتی که باید به آنها توجه کرد عبارتند از:
- متغیر cities به منظور تعیین برچسبها برای شهرها مورد استفاده قرار میگیرد.
- دیتافریم coors برای تعیین طول و عرض جغرافیایی هر شهر مورد استفاده قرار میگیرد.
- xlim و ylim در ggplot برای بزرگنمایی و کوچکنمایی نقشه، بسته به مختصات تعیین شده مورد استفاده قرار میگیرند.
توجه به این موضوع لازم است که از کتابخانه ggrepel به منظور نوشتن برچسب هر نقطه برای هر شهر در آن مورد استفاده قرار میگیرد. این امکان وجود دارد که برچسبها با یکدیگر همپوشانی داشته باشند و این موضوع اغلب به لحاظ بصری جذاب نیست.
بزرگنمایی در ناحیه مشخص
چنانکه بیان شد، xlim و ylim برای یک حاشیه باریک تنظیم شدهاند. در اینجا، xlim روی (۴۰ و ۱۰-) و ylim روی (۶۰ و ۳۵) تنظیم شده است. اگرچه، در نقشه پیشین xlim روی (۱۵۰ و 0) و ylim روی (۱۰۰ و ۰) تنظیم شده بود. از آنجا که این متد از پایگاه داده نقشه جهان استفاده میکند، ممکن است کشورهایی که ناحیه مورد نظر کاربر را احاطه کردهاند نیز بتوان یافت (در این مثال، فرانسه و آلمان) که تفکیک شده نیز هستند.
انجام این کار در صورتی که کاربر صرفا قصد داشته باشد یک کشور خاص را نشان دهد امری پیچیده و دشوار نیست، اما امکان نمایش یک کشور به صورت ایزوله نیز وجود دارد. برای مثال با تعیین ("map_data("usa به جای ("map_data("world میتوان یک کشور را به صورت ایزوله نمایش داد.
محاسبه فاصله
اکنون، فرض میشود که هدف محاسبه فاصله بین دو نقطه است.
برای مثال، کاربر میداند که طول و عرض جغرافیایی فرانسه و آلمان به صورت زیر است.
- پاریس: 2.3522 و 48.8566
- برلین: 13.4050 و 52.5200
در اینجا مختصات طول و عرض جغرافیایی دریافت و فاصله بین دو نقطه (پاریس و برلین) محاسبه میشود.
خروجی محاسبه حاکی از آن است که فاصله بین پاریس تا برلین برابر با ۸۷۶ کیلومتر است.
مثال کاربردی: نظارت بر ترافیک با رسانههای اجتماعی
پرسشی که در این وهله مطرح میشود این است که چه کاربردهایی برای ترسیم نقشه با استفاده از زبان برنامهنویسی R وجود دارد. فرض میشود که کاربر قصد دارد از دادههای geolocation موجود در رسانههای اجتماعی استفاده کند. برای درک بهتر موضوع یک مثال بیان میشود.
کاربر قصد دارد از دادههای «توییتر» (Twitter) برای تحلیل الگوی ترافیک در بریتانیا استفاده کند. به همین منظور، در توییتر، ۱۰۰۰۰ توییت حاوی کلیدواژه UK traffic را جستوجو میکند. پس از انجام این کار، نقشه موقعیت جغرافیایی آنها ترسیم میشود. به عبارت دیگر، بر اساس طول و عرض جغرافیایی موجود در توییتهایی که دادههای geolocation برای آنها فعال است، نقشه موقعیت جغرافیایی ترسیم میشوند.
اکنون و با رسم نمودارها، میتوان مختصاتهایی که توییت مربوط به «UK traffic» طی ماه گذشته است برای آنها منتشر شده را مشاهده کرد (این کد در ۲۹ نوامبر ۲۰۱۸ اجرا شده است).
شایان توجه است که موقعیت بسیاری از توییتها در نزدیکی بزرگراه M1 و M40 است که به عنوان دو تا از شلوغترین بزرگراههای بریتانیا شناخته شدهاند.
در این مطلب مشاهده شد که چگونه میتوان با استفاده همزمان از رسانههای اجتماعی و ترسیم نقشه، مناطق دارای ترافیک بالا را شناسایی کرد.
اگر مطلب بالا برای شما مفید بوده، آموزشهای زیر نیز به شما پیشنهاد میشود:
- مجموعه آموزشهای برنامهنویسی پایتون
- آموزش برنامهنویسی R و نرمافزار R Studio
- مجموعه آموزشهای آمار، احتمالات و دادهکاوی
- مجموعه آموزشهای یادگیری ماشین و بازشناسی الگو
- مجموعه آموزشهای هوش محاسباتی
- مجموعه آموزشهای شبکههای عصبی مصنوعی
- ترسیم دادههای جغرافیایی در پایتون — راهنمای جامع
- تبدیل دادههای بدون ساختار به ساختیافته با پایتون و API نقشه گوگل — راهنمای کامل
^^