دورهبررسی نشده

R برای پژوهشگران: دوره‌ی کامل ۱۸ جلسه‌ای، از RStudio تا گزارش تکرارپذیر

دوره‌ی کامل ۱۸ جلسه‌ای، از RStudio تا گزارش تکرارپذیر

سازنده: بین‌کاوهنوز امتیازی ندارد
رایگان

آخرین به‌روزرسانی: ۱۳ مهر ۱۴۰۵

برای تهیه و استفاده، برنامه‌ی بین‌کاو را باز کنید و به بخش بازارچه بروید. هزینه از اعتبار حساب شما کسر می‌شود.

سرفصل‌های دوره

آموزش کامل و گام‌به‌گام زبان R به فارسی، از نخستین خط کد تا یک گزارش پژوهشی تکرارپذیر. در ۱۸ جلسه و هفت بخش، R و RStudio را نصب می‌کنید و با کنسول، اسکریپت، متغیرها و بسته‌ها کار می‌کنید؛ پروژه‌ی منظم RStudio می‌سازید و داده‌ی gapminder را دانلود و بررسی می‌کنید؛ انواع داده، بردار، لیست، فاکتور، ماتریس و دیتافریم را یاد می‌گیرید؛ با اندیس، نام و شرط‌های منطقی زیرمجموعه می‌گیرید؛ با if و else، حلقه‌های for و while، برداری‌سازی و نوشتن تابع برنامه می‌نویسید؛ با ggplot2 نمودارهای پراکنش، خطی، جعبه‌ای و چندپانلیِ آماده‌ی مقاله می‌سازید و با ggsave و write.csv ذخیره می‌کنید (از جمله CSV فارسی با UTF-8)؛ با dplyr (select، filter، group_by، summarize، mutate و لوله‌ی %>%) و tidyr (pivot_longer، pivot_wider، separate، unite) داده را پالایش و مرتب می‌کنید؛ با R Markdown و knitr گزارش HTML و Word می‌سازید؛ با testthat، Git و renv نرم‌افزار پژوهشی قابل‌اعتماد می‌نویسید؛ و در پروژه‌ی پایانی، امید به زندگی و درآمد سرانه‌ی ایران را از ۱۹۵۲ تا ۲۰۰۷ با همسایگانش و با میانه‌ی آسیا مقایسه و گزارش می‌کنید. همه‌ی کدها و خروجی‌های دوره با R 4.3 اجرا و بررسی شده‌اند. هر جلسه آموزش، مثال کد با خروجی واقعی، پرسش کوتاه، تمرین کدنویسی و تکلیف دارد، و یادداشت کامل جلسه مثل یک فصل کتاب درسی در دسترس است. دستیار آموزشی هوش مصنوعی گام‌به‌گام درس می‌دهد، پاسخ‌ها را می‌سنجد و تا تسلط بر هر هدف همراهتان است. کلیدواژه‌ها: آموزش R، آموزش RStudio، برنامه‌نویسی R، تحلیل داده، آمار با R، علم داده، tidyverse، dplyr، tidyr، ggplot2، R Markdown، knitr، پژوهش تکرارپذیر، gapminder. این دوره برگردان و بازنویسیِ گسترش‌یافته‌ی دوره‌ی Software Carpentry با عنوان «R for Reproducible Scientific Analysis» است (© The Carpentries، مجوز CC BY 4.0، https://swcarpentry.github.io/r-novice-gapminder/). تغییرات: ترجمه به فارسی، بازنویسی و افزودن توضیح، مثال، تمرین و یک پروژه‌ی پایانی.

۱۸ درس در ۷ بخش

۱. شروع کار با R: RStudio، متغیرها، بسته‌ها و مدیریت پروژه

  1. آشنایی با R و RStudio
    نخستین جلسه‌ی دوره: چرا R برای پژوهش تکرارپذیر، نصب R و RStudio، پنل‌های RStudio، نوشتن و اجرای اسکریپت، R به‌عنوان ماشین‌حساب (ترتیب عملیات، نماد علمی، تابع‌های ریاضی) و مقایسه‌ی مقدارها با تأکید بر `all.equal()` برای عددهای اعشاری؛ با مثال‌هایی از داده‌های ایران و همسایگانش.
    ۲۶ گام · ۱۴ تمرین
  2. متغیرها، محیط کار و بسته‌ها
    ذخیره‌ی مقدار در متغیر با `<-` و قواعد نام‌گذاری، نخستین آشنایی با بردارها و برداری‌سازی، مدیریت محیط کار با `ls()` و `rm()` و فرق خطا و هشدار، و نصب و بارگذاری بسته‌ها با `install.packages()` و `library()`؛ همراه با همه‌ی تمرین‌های درس اصلی و مثال‌هایی از داده‌های ایران و ترکیه.
    ۲۶ گام · ۱۶ تمرین
  3. مدیریت پروژه و کمک گرفتن
    ساختن پروژه‌ی RStudio به نام `r-gapminder` با پوشه‌های `data/`، `scripts/`، `figures/` و `reports/`، اصول سازمان‌دهی پروژه (داده‌ی خام فقط‌خواندنی، خروجی دورریختنی، کنترل نسخه)، دانلود و بررسی داده‌ی gapminder، پوشه‌ی کاری و مسیرهای نسبی؛ و کمک گرفتن: صفحه‌های راهنما، ویگنت‌ها، `??`، CRAN Task Views، پرسیدن پرسش خوب با `dput()` و `sessionInfo()` و نگاه نقادانه به هوش مصنوعی مولد.
    ۲۷ گام · ۱۵ تمرین

۲. ساختارهای داده در R: بردار، لیست، فاکتور، ماتریس و دیتافریم

  1. انواع داده و بردارها
    با ساختن، ذخیره و خواندن یک داده‌ی کوچک (گربه‌ها) شروع می‌کنیم و پنج نوع داده‌ی پایه‌ی R، قانون هم‌نوعی بردارها و ستون‌ها، تبدیل خودکار و صریح نوع (coercion و توابع as.*) و توابع پایه‌ی کار با بردار (c، seq، head، tail، length، کروشه) را یاد می‌گیریم؛ با مثال‌هایی از داده‌ی ایران.
    ۲۶ گام · ۱۳ تمرین
  2. لیست‌ها، نام‌ها، دیتافریم‌ها، فاکتورها و ماتریس‌ها
    با لیست‌ها و نام‌ها (ویژگی‌ها) آشنا می‌شویم، می‌فهمیم دیتافریم پشت پرده لیستی از بردارهای هم‌طول است (typeof در برابر class و هفت راه دسترسی به بخش‌های دیتافریم)، داده‌ی رسته‌ای را با فاکتور نمایش می‌دهیم (factor، levels، stringsAsFactors) و با ماتریس‌ها (dim، byrow، dimnames) کار می‌کنیم.
    ۲۶ گام · ۱۴ تمرین
  3. کاوش دیتافریم‌ها با gapminder
    افزودن و حذف ستون و ردیف (cbind، rbind، اندیس منفی، %in%، NULL)، چسباندن دو دیتافریم، کنار گذاشتن ردیف‌های دارای NA با na.omit و رفتار ستون‌های فاکتوری در برابر متنی را یاد می‌گیریم؛ سپس داده‌ی واقعی gapminder را می‌خوانیم و با str، summary، dim، colnames، head/tail و sample کاوش می‌کنیم و کد بارگذاری را در یک اسکریپت می‌گذاریم.
    ۲۶ گام · ۱۴ تمرین

۳. انتخاب و فیلتر داده: زیرمجموعه‌گیری با اندیس، نام و شرط

  1. زیرمجموعه‌گیری از بردارها و فاکتورها
    در این جلسه یاد می‌گیرید بخش‌هایی از یک بردار یا فاکتور را بیرون بکشید: با شماره‌ی جایگاه (اندیس)، با اندیس منفی برای کنار گذاشتن عناصر، با نام و با شرط‌های منطقی. با ترکیب شرط‌ها، عملگر %in% و دام «بازیافت» آشنا می‌شوید، مقادیر ویژه‌ای مثل NA و Inf را مدیریت می‌کنید و می‌بینید چرا سطح‌های فاکتور بعد از زیرمجموعه‌گیری باقی می‌مانند. مثال‌ها از امید به زندگی ایران و همسایه‌هایش در داده‌ی gapminder است.
    ۲۵ گام · ۱۴ تمرین
  2. زیرمجموعه‌گیری از ماتریس‌ها، لیست‌ها و دیتافریم‌ها
    در این جلسه زیرمجموعه‌گیری را به دو بُعد و به ساختارهای تودرتو می‌بریم: انتخاب سطر و ستون در ماتریس (و نقش drop)، تفاوت مهم [ و [[ و $ در لیست‌ها (حتی برای کاویدن خروجی یک مدل آماری)، و انتخاب ستون‌ها و فیلتر کردن سطرهای دیتافریم gapminder با شرط‌های منطقی؛ با مثال‌هایی از ایران و همسایه‌هایش و اصلاح خطاهای رایج.
    ۲۴ گام · ۱۳ تمرین

۴. برنامه‌نویسی با R: شرط، حلقه، برداری‌سازی و تابع‌نویسی

  1. کنترل جریان: شرط‌ها و حلقه‌ها
    در این جلسه یاد می‌گیرید با `if`، `else` و `ifelse()` بر اساسِ داده تصمیم بگیرید، با حلقه‌های `for` و `while` کارها را تکرار کنید، نتیجه‌ی حلقه را کارآمد ذخیره کنید و تشخیص دهید چه وقت راهِ برداری بهتر از حلقه است؛ همه با مثال‌هایی از داده‌ی gapminder، ایران و همسایه‌هایش.
    ۲۵ گام · ۱۳ تمرین
  2. برداری‌سازی
    در این جلسه یاد می‌گیرید به‌جای حلقه، عمل‌ها را یک‌جا روی کلِ بردارها و ستون‌های دیتافریم انجام دهید: حسابِ عنصر به عنصر و قاعده‌ی بازیافت، مقایسه‌ها و عملگرهای منطقی (`&` در برابرِ `&&`)، تابع‌های برداری و خلاصه‌ساز، سنجشِ سرعت با `system.time()` و تفاوتِ `*` با ضربِ ماتریسیِ `%*%`؛ با مثال‌هایی از gapminder و ایران.
    ۲۵ گام · ۱۲ تمرین
  3. نوشتن تابع
    در این جلسه یاد می‌گیرید تابع‌های خودتان را در R تعریف کنید: آرگومان و مقدارِ بازگشتی، ترکیبِ تابع‌ها، برنامه‌نویسیِ تدافعی با `stopifnot()`، آرگومان‌های پیش‌فرض در تابعی که GDP را از gapminder حساب می‌کند، حوزه و انتقال با مقدار، بارگذاری با `source()`، و مستندسازی و آزمونِ تابع‌ها.
    ۲۶ گام · ۱۴ تمرین

۵. مصورسازی با ggplot2 و ذخیره‌ی نمودار و داده

  1. نمودارهای حرفه‌ای با ggplot2
    با منطق «دستور زبان گرافیک» در ggplot2 آشنا می‌شوید: داده، نگاشت با aes و لایه‌های geom؛ نمودار پراکنش، خطی و جعبه‌ای می‌سازید، فرق نگاشت و تنظیم را یاد می‌گیرید، با مقیاس لگاریتمی و خط روند الگوها را آشکار می‌کنید، با facet_wrap نمودار چندپانلی می‌سازید و با labs، theme و ggsave یک نمودار آراسته از امید به زندگی ایران و همسایگانش آماده‌ی انتشار می‌کنید.
    ۲۴ گام · ۱۳ تمرین
  2. ذخیره‌ی نمودارها و داده‌ها
    در این جلسه یاد می‌گیرید نتیجه‌ی تحلیل را به شکل تکرارپذیر ذخیره کنید: نمودارها با ggsave() و تنظیم اندازه، واحد و dpi، و با دستگاه‌های گرافیکی pdf()/png() و dev.off() (از جمله PDF چندصفحه‌ای و ذخیره در حلقه)؛ داده‌ها با write.table() و write.csv() و آرگومان‌های sep، quote و row.names، و saveRDS(). در پایان مشکلات متن فارسی را حل می‌کنیم: CSV با UTF-8، فایل سازگار با اکسل (BOM با write_excel_csv) و نمودار فارسی در PDF با cairo_pdf.
    ۲۳ گام · ۱۲ تمرین

۶. دست‌کاری داده با tidyverse: dplyr و tidyr

  1. دست‌کاری دیتافریم با dplyr
    با بسته‌ی dplyr و لوله (%>% و لوله‌ی بومی |>) ستون‌ها را با select و rename و سطرها را با filter انتخاب می‌کنید، با group_by و summarize و count/n() داده را گروه‌به‌گروه خلاصه می‌کنید، با mutate و ifelse ستون‌های تازه و شرطی می‌سازید و نتیجه را بی‌واسطه به ggplot2 می‌فرستید؛ همراه با تحلیل ایران و همسایگانش و مقایسه‌ی ایران با میانه‌ی آسیا.
    ۲۶ گام · ۱۳ تمرین
  2. داده‌ی مرتب با tidyr
    قالب‌های پهن، بلند و میانه را می‌شناسید و با بسته‌ی tidyr بین آن‌ها جابه‌جا می‌شوید: با pivot_longer داده‌ی پهن gapminder را بلند می‌کنید، با separate و unite ستون‌ها را می‌شکنید و می‌چسبانید، با pivot_wider به قالب میانه و پهن برمی‌گردید و درستی کار را با all.equal بررسی می‌کنید؛ سپس از تغییر قالب برای جدول گزارش و نمودار ایران و همسایگانش استفاده می‌کنید.
    ۲۴ گام · ۱۲ تمرین

۷. گزارش تکرارپذیر، نرم‌افزار خوب و پروژه‌ی پایانی

  1. گزارش‌های تکرارپذیر با R Markdown و knitr
    در این جلسه یاد می‌گیرید تحلیل و متن گزارش را در یک فایل R Markdown کنار هم بنویسید: سرآیند YAML، مارک‌داون، تکه‌کدهای R و گزینه‌هایشان، کد درون‌خطی برای عددهای تکرارپذیر، ساختن HTML/Word/PDF با knitr و pandoc، و نوشتن گزارش فارسی راست‌به‌چپ.
    ۲۵ گام · ۱۳ تمرین
  2. نوشتن نرم‌افزار خوب
    در این جلسه یاد می‌گیرید کد پژوهشی خوانا، قابل‌اعتماد و تکرارپذیر بنویسید: ساختار پوشه‌ی پروژه، مستندسازی و سبک، تابع‌های ماژولار و اصل «خودت را تکرار نکن»، آزمودن با testthat، کنترل نسخه با Git در RStudio، ثبت محیط با sessionInfo و renv، و منابع ادامه‌ی راه.
    ۲۶ گام · ۱۳ تمرین
  3. پروژه‌ی پایانی: تحلیل gapminder از صفر تا گزارش
    در این جلسه‌ی پایانی همه‌ی مهارت‌های دوره را در یک پروژه‌ی واقعی به کار می‌برید: امید به زندگی و درآمد سرانه‌ی ایران از ۱۹۵۲ تا ۲۰۰۷ را با همسایگانش و با میانه‌ی کشورهای آسیایی مقایسه می‌کنید؛ از وارسی داده و انتخاب کشورها تا خلاصه‌سازی با dplyr و tidyr، نمودار با ggplot2، تابع‌نویسی، تفسیر محتاطانه‌ی یک یافته‌ی غافل‌گیرکننده و نوشتن گزارش R Markdown فارسی.
    ۲۵ گام · ۱۴ تمرین

نظر کاربران

هنوز نظری ثبت نشده است. فقط کسانی که این مورد را تهیه کرده‌اند می‌توانند نظر بدهند.