در این مقاله قصد دارم به آموزش تجزیه و تحلیل داده های اکتشافی در R بپردازم. تا انتهای این مقاله همراه کیارا آکادمی باشید تا آموزش نرم افزار R را به صورت کاربردی دریافت نمایید.
تحلیل داده های اکتشافی چیست؟
یکی از اولین مراحل هر پروژه تجزیه و تحلیل داده ها، تجزیه و تحلیل داده های اکتشافی است. این شامل کاوش یک مجموعه داده به سه روش است:
- 1. خلاصه کردن یک مجموعه داده با استفاده از آمار توصیفی.
- 2. تجسم مجموعه داده با استفاده از نمودارها.
- 3. شناسایی مقادیر از دست رفته.
با انجام این سه عمل، میتوانید درک درستی از نحوه توزیع مقادیر موجود در یک مجموعه داده داشته باشید و قبل از شروع آزمایش فرضیه یا انجام مدلسازی آماری، مقادیر مشکلساز را شناسایی کنید. ساده ترین راه برای انجام تجزیه و تحلیل داده های اکتشافی در R با استفاده از توابع بسته های tidyverse است. مثال گام به گام زیر نحوه استفاده از توابع این بستهها را برای انجام تجزیه و تحلیل دادههای اکتشافی روی مجموعه دادههای الماس که همراه با بستههای tidyverse ساخته شده است، نشان میدهد.
مرحله 1: بارگیری و مشاهده داده ها
ابتدا از تابع ()data برای بارگذاری مجموعه داده الماس استفاده می کنیم:
library(tidyverse) |
#load diamonds dataset data(diamonds) |
میتوانیم با استفاده از تابع head() به شش ردیف اول مجموعه داده نگاهی بیندازیم:
#view first six rows of diamonds dataset head(diamonds) |
مرحله 2: داده ها را خلاصه کنید
ما می توانیم از تابع ()summary برای خلاصه کردن سریع هر متغیر در مجموعه داده استفاده کنیم:
#summarize diamonds dataset summary(diamonds) |
برای هر یک از متغیرهای عددی می توانیم اطلاعات زیر را ببینیم:
- حداقل: حداقل مقدار.
- 1st Qu: مقدار چارک اول (صدک 25).
- میانه: مقدار میانه.
- میانگین: مقدار متوسط.
- س 3: مقدار ربع سوم (صدک 75).
- حداکثر: حداکثر مقدار.
برای متغیرهای طبقه بندی شده در مجموعه داده (برش، رنگ و وضوح) تعداد فراوانی هر مقدار را می بینیم. به عنوان مثال، برای متغیر cut:
- Fair: این مقدار 1610 بار رخ می دهد.
- Good: این مقدار 4906 بار رخ می دهد.
- Very Good: این مقدار 12082 بار رخ می دهد.
- Premium: این مقدار 13791 بار رخ می دهد.
- Ideal : این مقدار 21551 بار رخ می دهد.
می توانیم از تابع ()dim برای بدست آوردن ابعاد مجموعه داده بر حسب تعداد ردیف و تعداد ستون استفاده کنیم:
#display rows and columns dim(diamonds) |
می بینیم که مجموعه داده دارای 53940 سطر و 10 ستون است.
مرحله 3: داده ها را تجسم کنید
همچنین میتوانیم نمودارهایی برای تجسم مقادیر موجود در مجموعه داده ایجاد کنیم. برای مثال، میتوانیم از تابع ()geom_histogram برای ایجاد یک هیستوگرام از مقادیر یک متغیر خاص استفاده کنیم:
#create histogram of values for price ggplot(data=diamonds, aes(x=price)) + geom_histogram(fill=”steelblue”, color=”black”) + ggtitle(“Histogram of Price Values”) |
همچنین میتوانیم از تابع ()geom_point برای ایجاد یک نمودار پراکنده از هر ترکیب دوتایی از متغیرها استفاده کنیم:
#create scatterplot of carat vs. price, using cut as color variable ggplot(data=diamonds, aes(x=carat, y=price, color=cut)) + geom_point() |
همچنین می توانیم از تابع geom_boxplot() برای ایجاد یک باکس پلات از یک متغیر که توسط متغیر دیگری گروه بندی شده است استفاده کنیم:
#create scatterplot of price, grouped by cut ggplot(data=diamonds, aes(x=cut, y=price)) + geom_boxplot(fill=”steelblue”) |
همچنین میتوانیم از تابع cor() برای ایجاد یک ماتریس همبستگی برای مشاهده ضریب همبستگی بین هر ترکیب دوتایی از متغیرهای عددی در مجموعه داده استفاده کنیم:
#create correlation matrix of (rounded to 2 decimal places) round(cor(diamonds[c(‘carat’, ‘depth’, ‘table’, ‘price’, ‘x’, ‘y’, ‘z’)]), 2) |
#count total missing values in each column sapply(diamonds, function(x) sum(is.na(x))) |
از خروجی می بینیم که در هر ستون صفر مقدار از دست رفته وجود دارد. در عمل، احتمالاً با چندین مقدار از دست رفته در مجموعه داده خود مواجه خواهید شد. این تابع برای شمارش تعداد کل مقادیر از دست رفته مفید خواهد بود.
مطالعه منابع بیشتر: