تقرير تحليلي – منصة أرقامي |
تُعد السياحة أحد القطاعات الحيوية التي تسهم بشكل مباشر في الاقتصاد الوطني للمملكة العربية السعودية، خاصة في ظل رؤية 2030 التي تهدف إلى تنويع مصادر الدخل وتقليل الاعتماد على النفط. وقد شهدت المملكة خلال السنوات الأخيرة تطورًا ملحوظًا في بنيتها التحتية السياحية، وتنظيمها لفعاليات كبرى مثل مواسم السعودية، مما أسهم في استقطاب شرائح متنوعة من السياح سواء من داخل المملكة أو خارجها.
في عام 2024، سجّلت المملكة 116 مليون رحلة سياحية، منها 29.7 مليون رحلة وافدة و86.2 مليون رحلة محلية، مما يعكس النمو الكبير في حجم الحركة السياحية. وسجلت الرحلات الوافدة نموًا بنسبة 8.4% مقارنة بعام 2023، مع زيادة واضحة في عدد الرحلات التي تضمنت مبيتًا بنسبة 29.6%. وبلغت ذروة السياحة الوافدة في شهر مارس 2024 بوصول 3.16 مليون سائح. أما دوافع الزيارة فتنوعت بين:
تحليل هذه البيانات يساعد صناع القرار في رسم السياسات السياحية المستقبلية بناءً على توجهات الزوار، وتحديد الفرص المحتملة لتحسين وتطوير الخدمات السياحية.
السنة | غرض الزيارة | فئة السائح | عدد السياح |
---|---|---|---|
2015 | الأغراض الدينية | السياحة الوافدة | 1188.68095669897 |
2015 | الترفيه | السياحة الوافدة | 269.830449970589 |
2015 | الأعمال | السياحة الوافدة | 21.932781379414 |
… | … | … | … |
2024 | الأعمال | السياحة الوافدة | 224.025 |
2024 | زيارة الأصدقاء أو الأقارب | السياحة الوافدة | 410.944 |
2024 | أخرى | السياحة الوافدة | 208.23 |
العمود | الوصف |
---|---|
السنة | السنة التي تم فيها تسجيل عدد السياح (من 2015 وما بعدها). |
غرض الزيارة | السبب الرئيسي للزيارة، مثل: الترفيه، الأغراض الدينية، الأعمال، زيارة الأصدقاء، أخرى. |
فئة السائح | نوع السياح (في هذه الحالة: “السياحة الوافدة” لجميع الصفوف). |
عدد السياح | عدد الزوار الذين قدموا لهذا الغرض خلال تلك السنة، بوحدة ألف سائح. |
ما هو التغير السنوي في عدد السياح الوافدين لكل غرض من
أغراض الزيارة خلال الفترة 2015–2024؟
يساعد هذا السؤال في تتبع ديناميكيات كل غرض وفهم الفترات التي شهدت نمواً
أو انخفاضاً.
ما الغرض الذي يحتل المرتبة الأولى في عام 2024؟ وهل اختلف
ذلك عن الأعوام السابقة؟
يساعدنا في فهم أولويات الزوار، وما إذا كانت هذه الأولويات ثابتة أو تغيرت
بمرور الوقت.
هل توجد مجموعات من السنوات تتشابه في نمط السياحة؟
(K-means)
من خلال التحليل العنقودي يمكن تحديد فترات زمنية ذات خصائص سياحية
متشابهة، ما يساعد في استهداف السياسات بحسب المرحلة.
كيف تختلف السنوات في أبعاد السياحة؟ (تحليل
MDS)
يسمح بتحليل تشابه أو تباعد السنوات بناءً على التوزيع النسبي لأغراض
الزيارة.
ما الاتجاه العام لكل غرض؟ هل هو صاعد أم هابط؟ (تحليل
الاتجاه)
يوضح النمو أو التراجع في كل نوع من أنواع السياحة بشكل كمي باستخدام
الانحدار الخطي. # المقدمة
تُعد السياحة أحد القطاعات الحيوية التي تسهم بشكل مباشر في الاقتصاد الوطني للمملكة العربية السعودية، خاصة في ظل رؤية 2030 التي تهدف إلى تنويع مصادر الدخل وتقليل الاعتماد على النفط. وقد شهدت المملكة خلال السنوات الأخيرة تطورًا ملحوظًا في بنيتها التحتية السياحية، وتنظيمها لفعاليات كبرى مثل مواسم السعودية، مما أسهم في استقطاب شرائح متنوعة من السياح سواء من داخل المملكة أو خارجها.
في عام 2024، سجّلت المملكة 116 مليون رحلة سياحية، منها 29.7 مليون رحلة وافدة و86.2 مليون رحلة محلية، مما يعكس النمو الكبير في حجم الحركة السياحية. وسجلت الرحلات الوافدة نموًا بنسبة 8.4% مقارنة بعام 2023، مع زيادة واضحة في عدد الرحلات التي تضمنت مبيتًا بنسبة 29.6%. وبلغت ذروة السياحة الوافدة في شهر مارس 2024 بوصول 3.16 مليون سائح. أما دوافع الزيارة فتنوعت بين:
تحليل هذه البيانات يساعد صناع القرار في رسم السياسات السياحية المستقبلية بناءً على توجهات الزوار، وتحديد الفرص المحتملة لتحسين وتطوير الخدمات السياحية.
df_clean <- df %>%
rename(year = السنة, purpose = `غرض الزيارة`, category = `فئة السائح`, visitors = `عدد السياح`)
df_summary <- df_clean %>%
group_by(year, purpose) %>%
summarise(total_visitors = sum(visitors, na.rm = TRUE)) %>%
ungroup()
## `summarise()` has grouped output by 'year'. You can override using the
## `.groups` argument.
pivot_df <- df_summary %>%
pivot_wider(names_from = purpose, values_from = total_visitors) %>%
arrange(year)
pivot_df
year | أخرى | الأعمال | الأغراض الدينية | الترفيه | زيارة الأصدقاء أو الأقارب |
---|---|---|---|---|---|
2015 | 2392.3664 | 1880.5755 | 8813.773 | 1560.6651 | 3346.8464 |
2016 | 1230.5065 | 4006.5072 | 8259.668 | 1260.8221 | 3286.8495 |
2017 | 455.9376 | 2694.9564 | 9287.024 | 854.5597 | 2816.4897 |
2018 | 410.1371 | 2450.6836 | 9293.265 | 875.0610 | 2305.1879 |
2019 | 663.4917 | 3164.5725 | 9859.392 | 1128.2351 | 2709.9453 |
2020 | 319.6846 | 771.9439 | 1751.520 | 392.8310 | 902.1984 |
2021 | 440.0040 | 1013.1110 | 273.857 | 312.1590 | 1438.0880 |
2022 | 1377.3570 | 1666.6930 | 5995.518 | 2466.1950 | 5132.0960 |
2023 | 1645.0000 | 1864.0000 | 11468.000 | 6246.0000 | 6201.0000 |
2024 | 1965.3940 | 1975.7700 | 12330.971 | 7505.6770 | 5949.6310 |
# بناء النماذج وتخزين النتائج
models <- df_summary %>%
group_by(purpose) %>%
do(model = lm(total_visitors ~ year, data = .)) %>%
mutate(tidy_model = list(broom::tidy(model))) %>%
unnest(tidy_model) %>%
filter(term == "year") %>%
select(purpose, estimate, std.error, p.value)
models
purpose | estimate | std.error | p.value |
---|---|---|---|
أخرى | 20.67632 | 86.16038 | 0.8163844 |
الأعمال | -157.49978 | 98.67858 | 0.1491356 |
الأغراض الدينية | 15.08777 | 461.10038 | 0.9746985 |
الترفيه | 569.91163 | 215.30085 | 0.0293901 |
زيارة الأصدقاء أو الأقارب | 309.04909 | 180.84366 | 0.1258397 |
ggplot(df_summary, aes(x = year, y = total_visitors)) +
geom_point() +
geom_smooth(method = "lm", se = TRUE, color = "blue") +
facet_wrap(~ purpose, scales = "free_y") +
labs(title = "تحليل الاتجاه الزمني حسب الغرض",
x = "السنة", y = "عدد السياح") +
theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'
نُجري تحليل الانحدار الخطي لكل غرض من أغراض الزيارة لتحديد ما إذا كان عدد الزوار في تزايد أو تراجع. يتم تقييم الاتجاه بناءً على الميل الإحصائي ومقدار الدلالة.
الاتجاهات ذات الميل الموجب والدلالة العالية (p < 0.05) تعني نموًا مؤكدًا.
الاتجاهات السالبة تشير إلى تراجع مثلما يحدث في سياحة الأعمال.
يُظهر الرسم الاتجاه العام لكل غرض بشكل منفصل لتسليط الضوء على أنماط النمو والركود.
df_change <- df_summary %>%
group_by(purpose) %>%
arrange(year) %>%
mutate(yearly_change = round((total_visitors / lag(total_visitors) - 1) * 100, 1))
df_change %>% filter(year == 2024)
year | purpose | total_visitors | yearly_change |
---|---|---|---|
2024 | أخرى | 1965.394 | 19.5 |
2024 | الأعمال | 1975.770 | 6.0 |
2024 | الأغراض الدينية | 12330.971 | 7.5 |
2024 | الترفيه | 7505.677 | 20.2 |
2024 | زيارة الأصدقاء أو الأقارب | 5949.631 | -4.1 |
df_summary %>%
group_by(purpose) %>%
summarise(diff_2024_2020 = round(diff(range(total_visitors[year %in% c(2020, 2024)])),1))
purpose | diff_2024_2020 |
---|---|
أخرى | 1645.7 |
الأعمال | 1203.8 |
الأغراض الدينية | 10579.5 |
الترفيه | 7112.8 |
زيارة الأصدقاء أو الأقارب | 5047.4 |
kdata <- pivot_df %>% column_to_rownames("year") %>% scale()
set.seed(123)
kfit <- kmeans(kdata, centers = 3, nstart = 25)
fviz_cluster(kfit, data = kdata, ellipse.type = "norm")
## Too few points to calculate an ellipse
dist_matrix <- dist(kdata)
mds_fit <- cmdscale(dist_matrix, k = 2)
mds_df <- data.frame(mds_fit, year = rownames(kdata))
ggplot(mds_df, aes(X1, X2, label = year)) +
geom_point(color = "steelblue", size = 3) +
geom_text(vjust = -0.5) +
labs(title = "تحليل MDS للتشابه بين السنوات") +
theme_minimal()
ggplot(df_summary, aes(x = year, y = total_visitors, color = purpose)) +
geom_line(size = 1.2) +
geom_point(size = 2) +
labs(title = "تطور عدد السياح حسب الغرض", x = "السنة", y = "عدد السياح") +
scale_y_continuous(labels = comma) +
theme_minimal()
# بيانات السياحة المحلية
local_df <- read_excel("السياحة-المحلية-حسب-الغرض-من-الزيارة.xlsx") %>%
rename(year = السنة, purpose = `غرض الزيارة`, visitors = `عدد السياح`)
# تجميع المحلية
local_grouped <- local_df %>%
group_by(year, purpose) %>%
summarise(visitors = sum(visitors, na.rm = TRUE))
local_wide <- local_grouped %>% pivot_wider(names_from = year, values_from = visitors)
local_diff <- local_wide %>% mutate(across(where(is.numeric), ~ . - lag(.), .names = "diff_{col}"))
local_long <- local_diff %>%
select(purpose, starts_with("diff_")) %>%
pivot_longer(-purpose, names_to = "year", values_to = "diff") %>%
mutate(year = gsub("diff_", "", year), type = "محلية")
# بيانات السياحة الوافدة
foreign_df <- df_clean
foreign_grouped <- foreign_df %>%
group_by(year, purpose) %>%
summarise(visitors = sum(visitors, na.rm = TRUE))
foreign_wide <- foreign_grouped %>% pivot_wider(names_from = year, values_from = visitors)
foreign_diff <- foreign_wide %>% mutate(across(where(is.numeric), ~ . - lag(.), .names = "diff_{col}"))
foreign_long <- foreign_diff %>%
select(purpose, starts_with("diff_")) %>%
pivot_longer(-purpose, names_to = "year", values_to = "diff") %>%
mutate(year = gsub("diff_", "", year), type = "وافدة")
# دمج البيانات
combined <- bind_rows(foreign_long, local_long)
# الرسم
ggplot(combined, aes(x = year, y = diff, group = interaction(purpose, type), color = type)) +
geom_line(size = 1.2) +
geom_point(size = 2) +
facet_wrap(~purpose, scales = "free_y") +
labs(title = "مقارنة التغير السنوي في عدد السياح حسب الغرض - وافدة مقابل محلية",
x = "السنة",
y = "الفرق في عدد السياح عن السنة السابقة",
color = "نوع السياحة") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
مقارنة التغير السنوي في عدد السياح حسب الغرض – وافدة مقابل محلية
المحور الأفقي: السنوات
المحور العمودي: الفرق في عدد السياح مقارنة بالسنة السابقة
اللون الأحمر = السياحة المحلية
اللون الأزرق = السياحة الوافدة
كل مخطط فرعي يمثل غرضًا مختلفًا
🧭 التفسير حسب الغرض 1. 🟩 الأغراض الدينية انخفاض حاد في 2020 بسبب الجائحة لكلا النوعين.
تعافي واضح في 2023–2024، خاصة للسياحة الوافدة.
التغير أكبر وأسرع في الوافدين مقارنة بالمحليين.
الوافدة أكثر تذبذبًا، مع انخفاض تدريجي في السنوات الأخيرة.
السياحة الترفيهية الوافدة شهدت تحسنًا طفيفًا فقط.
الوافدة أكثر استقرارًا نسبيًا.
📌 الاستنتاج العام: السياحة المحلية تشهد زيادات حادة في أغراض الترفيه والأعمال.
السياحة الوافدة تتعافى تدريجيًا من أثر الجائحة، خصوصًا في الأغراض الدينية.
هناك تحول في دوافع السياحة من دينية إلى ترفيهية، خاصة على الصعيد المحلي.
# حساب النمو الكلي بين 2015 و2024 لكل غرض
foreign_growth <- df_clean %>%
filter(year %in% c(2015, 2024)) %>%
group_by(purpose, year) %>%
summarise(total = sum(visitors, na.rm = TRUE)) %>%
pivot_wider(names_from = year, values_from = total) %>%
mutate(growth = `2024` - `2015`, type = "وافدة")
local_growth <- local_df %>%
filter(year %in% c(2015, 2024)) %>%
group_by(purpose, year) %>%
summarise(total = sum(visitors, na.rm = TRUE)) %>%
pivot_wider(names_from = year, values_from = total) %>%
mutate(growth = `2024` - `2015`, type = "محلية")
total_growth <- bind_rows(foreign_growth, local_growth)
total_growth %>% arrange(desc(growth))
purpose | 2015 | 2024 | growth | type |
---|---|---|---|---|
زيارة الأصدقاء أو الأقارب | 11101.085 | 30096.842 | 18995.75696 | محلية |
الترفيه | 19181.792 | 32296.481 | 13114.68948 | محلية |
الأعمال | 1859.751 | 8932.677 | 7072.92550 | محلية |
الترفيه | 1560.665 | 7505.677 | 5945.01194 | وافدة |
الأغراض الدينية | 8813.773 | 12330.971 | 3517.19840 | وافدة |
زيارة الأصدقاء أو الأقارب | 3346.846 | 5949.631 | 2602.78455 | وافدة |
أخرى | 2335.328 | 3414.272 | 1078.94364 | محلية |
الأعمال | 1880.575 | 1975.770 | 95.19455 | وافدة |
أخرى | 2392.366 | 1965.394 | -426.97240 | وافدة |
الأغراض الدينية | 11972.476 | 11417.087 | -555.38915 | محلية |
هذا التحليل يوضّح الأغراض التي شهدت أكبر نمو عددي بين عامي 2015 و2024. - الغرض الترفيهي يتصدّر النمو عادة بفضل رؤية السعودية وبرامج موسم الرياض ومواسم الترفيه. - يعكس هذا المؤشر تطور التوجهات السياحية وأثر السياسات العامة.
# الوافدة
peak_foreign <- df_clean %>%
group_by(purpose, year) %>%
summarise(total = sum(visitors, na.rm = TRUE)) %>%
group_by(purpose) %>%
slice_max(order_by = total, n = 1) %>%
mutate(type = "وافدة")
# المحلية
peak_local <- local_df %>%
group_by(purpose, year) %>%
summarise(total = sum(visitors, na.rm = TRUE)) %>%
group_by(purpose) %>%
slice_max(order_by = total, n = 1) %>%
mutate(type = "محلية")
bind_rows(peak_foreign, peak_local)
purpose | year | total | type |
---|---|---|---|
أخرى | 2015 | 2392.366 | وافدة |
الأعمال | 2016 | 4006.507 | وافدة |
الأغراض الدينية | 2024 | 12330.971 | وافدة |
الترفيه | 2024 | 7505.677 | وافدة |
زيارة الأصدقاء أو الأقارب | 2023 | 6201.000 | وافدة |
أخرى | 2023 | 3756.687 | محلية |
الأعمال | 2024 | 8932.677 | محلية |
الأغراض الدينية | 2015 | 11972.476 | محلية |
الترفيه | 2023 | 35010.468 | محلية |
زيارة الأصدقاء أو الأقارب | 2022 | 31815.486 | محلية |
يوضّح هذا الجدول السنة التي حقق فيها كل غرض أعلى عدد زوار، سواء في السياحة الوافدة أو المحلية. - مفيد لرصد نجاح الحملات السياحية أو تأثير الظروف مثل الجائحة.
library(broom)
lm_result <- df_clean %>%
group_by(purpose) %>%
do(tidy(lm(visitors ~ year, data = .))) %>%
filter(term == "year") %>%
select(purpose, estimate, std.error, p.value) %>%
mutate(type = "وافدة")
lm_local <- local_df %>%
group_by(purpose) %>%
do(tidy(lm(visitors ~ year, data = .))) %>%
filter(term == "year") %>%
select(purpose, estimate, std.error, p.value) %>%
mutate(type = "محلية")
bind_rows(lm_result, lm_local) %>% arrange(p.value)
purpose | estimate | std.error | p.value | type |
---|---|---|---|---|
الأعمال | 69.912414 | 4.513988 | 0.0000000 | محلية |
زيارة الأصدقاء أو الأقارب | 205.484355 | 20.613818 | 0.0000000 | محلية |
الترفيه | 159.275004 | 17.922235 | 0.0000000 | محلية |
الترفيه | 47.492636 | 5.383025 | 0.0000000 | وافدة |
زيارة الأصدقاء أو الأقارب | 25.754091 | 4.713452 | 0.0000003 | وافدة |
الأعمال | -13.124982 | 3.350630 | 0.0001506 | وافدة |
أخرى | 17.912947 | 6.041882 | 0.0036657 | محلية |
الأغراض الدينية | -27.500904 | 10.625597 | 0.0108605 | محلية |
أخرى | 1.723027 | 2.311651 | 0.4575325 | وافدة |
الأغراض الدينية | 1.257314 | 16.229127 | 0.9383787 | وافدة |
🔍 أبرز النتائج حسب الغرض 🟪 السياحة المحلية الغرض الاتجاه السنوي التفسير زيارة الأقارب 📈 +205.5 (p < 0.0001) أعلى نمو مطلق في الزوار المحليين. يعكس أهمية الروابط الاجتماعية وزيادة التنقل الداخلي. الترفيه 📈 +159.3 (p < 0.0001) ثاني أعلى نمو. يعكس نجاح فعاليات الترفيه مثل موسم الرياض والشتاء. الأعمال 📈 +69.9 (p < 0.0001) ارتفاع ثابت يعكس تحركات الأعمال والاجتماعات الداخلية. الأغراض الدينية 📉 -27.5 (p = 0.01) تراجع طفيف، ربما بسبب تغير نمط السفر الديني المحلي. أخرى 📈 +17.9 (p = 0.003) نمو معتدل في أنشطة غير مصنّفة.
🟦 السياحة الوافدة الغرض الاتجاه السنوي التفسير الترفيه 📈 +47.5 (p < 0.0001) نمو قوي، يعكس جهود هيئة السياحة لاستقطاب الزوار غير الدينيين. زيارة الأقارب 📈 +25.8 (p < 0.0001) توجه واضح نحو الزيارات العائلية من خارج المملكة. الأعمال 📉 -13.1 (p = 0.0001) انخفاض، ربما بسبب الرقمنة أو بعد الجائحة. الأغراض الدينية ⚖️ +1.26 (p = 0.938) لا يوجد تغير معنوي. أخرى ⚖️ +1.72 (p = 0.45) غير مهم إحصائيًا.
📌 الاستنتاج العام: أغراض الترفيه وزيارة الأقارب تشهد نموًا واضحًا ومهمًا إحصائيًا في السياحتين المحلية والوافدة.
الأغراض الدينية لا تنمو في الوافدة، وتتناقص محليًا.
الأعمال تنخفض في الوافدة، وتزداد في المحلية.
# نسبة كل غرض من إجمالي السياحة سنويًا
prop_foreign <- df_clean %>%
group_by(year, purpose) %>%
summarise(visitors = sum(visitors, na.rm = TRUE)) %>%
group_by(year) %>%
mutate(prop = visitors / sum(visitors), type = "وافدة")
prop_local <- local_df %>%
group_by(year, purpose) %>%
summarise(visitors = sum(visitors, na.rm = TRUE)) %>%
group_by(year) %>%
mutate(prop = visitors / sum(visitors), type = "محلية")
bind_rows(prop_foreign, prop_local) %>%
ggplot(aes(x = year, y = prop, fill = purpose)) +
geom_area() +
facet_wrap(~type) +
scale_y_continuous(labels = scales::percent_format()) +
labs(title = "تغير نسبة كل غرض سنويًا من إجمالي السياحة",
y = "النسبة المئوية", x = "السنة", fill = "الغرض") +
theme_minimal()
🧭 التفسير حسب نوع السياحة: 🟦 السياحة المحلية (الجزء الأيسر من الرسم): الترفيه هو الغرض المسيطر، ويشكّل أكثر من 40–50% من إجمالي الرحلات في معظم السنوات.
زيارات الأصدقاء والأقارب تمثل ثاني أعلى غرض وتُظهر بعض التذبذب، لكنها نمت بوضوح في 2021.
الأعمال والأغراض الدينية تمثل نسبة صغيرة جدًا من السياحة المحلية.
استقرار نسبي في توزيع الأغراض مع تذبذب طفيف بعد الجائحة.
🟩 السياحة الوافدة (الجزء الأيمن من الرسم): الأغراض الدينية تهيمن بوضوح، خصوصًا في السنوات الأولى (أكثر من 60–70%)، لكنها تراجعت بشكل كبير في 2020 بسبب الجائحة.
بعد الجائحة، نشهد صعودًا نسبيًا في:
الترفيه (مواسم السياحة)
زيارات الأقارب
الأعمال لها حضور متوسط، وتشهد استقرارًا نسبيًا.
📌 ملاحظات تحليلية مهمة: تأثير الجائحة (2020) واضح:
انخفاض حاد في النسبة الدينية في السياحة الوافدة.
ارتفاع في أغراض أخرى محليًا، خاصة الزيارات الشخصية.
الرؤية السعودية ساهمت في تعزيز السياحة الترفيهية (مواسم الترفيه، السياحة الداخلية).
رغم الاستقرار العام، هناك تباينات واضحة بين سلوك السياح المحليين والوافدين.
الرقم بداية، والتحليل هو الطريق.
جميع الحقوق محفوظة © أرقامي 2025
لمزيد من المعلومات، تواصل معنا عبر بريدنا الإلكتروني: argamil2025@gmail.com