Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Önce pastayı yesinler!

Önce pastayı yesinler!

Mine Cetinkaya-Rundel

October 24, 2020
Tweet

More Decks by Mine Cetinkaya-Rundel

Other Decks in Education

Transcript

  1. bit.ly/pasta-yesinler
    Önce
    pastayı
    yesinler!
    mine-cetinkaya-rundel
    [email protected]
    @minebocek
    bit.ly/pasta-yesinler
    © Tom Hovey 2018

    View full-size slide

  2. bit.ly/pasta-yesinler
    Q
    Pasta yapmayı yeni öğrenmeye
    yeni başladığınızı ve bir pastacılık
    dersinde olduğunuzu hayal edin.
    Derse başlamak için iki seçenek
    sunacağım. Hangisi size yapmayı
    öğreneceğiniz pasta hakkında
    daha iyi fikir verir?

    View full-size slide

  3. Ananas ve hindistan
    cevizli sandviç kek
    bit.ly/pasta-yesinler

    View full-size slide

  4. Ananas ve
    hindistan
    cevizli
    sandviç
    kek
    http://bit.ly/pasta-yesinler
    kızarmış
    hindistan
    cevizi gevreği
    ananas çiçeği

    View full-size slide

  5. 3
    1
    5
    yanlış kanı
    bağlam
    tasarım ilkesi

    View full-size slide

  6. bit.ly/pasta-yesinler
    yanlış
    kanı
    3

    View full-size slide

  7. bit.ly/pasta-yesinler
    "Öğrenciler yeni bir programlama dilini
    senelerdir öğretildiği şekilde ve sırada
    öğrenmelidir."

    View full-size slide

  8. bit.ly/pasta-yesinler
    "Öğrenciler, yeni bir programlama dilini
    veri yapıları ve algoritmalarla
    başlayarak öğrenmelidir."

    View full-size slide

  9. bit.ly/pasta-yesinler
    "Öğrenciler, yeni bir programlama dilini
    o dilde kod yazman için gereken
    yazılımı yükleyerek başlayarak öğrenmelidir."

    View full-size slide

  10. bit.ly/pasta-yesinler
    bağlam
    1

    View full-size slide

  11. bit.ly/pasta-yesinler
    introds.org
    Veri
    görselleş-
    tirme
    Veri
    okuma
    Veri
    manipülas-
    yonu
    Keşifsel
    veri analizi

    View full-size slide

  12. bit.ly/pasta-yesinler
    introds.org
    Veri
    görselleş-
    tirme
    Veri
    okuma
    Veri
    manipülas-
    yonu
    Keşifsel
    veri analizi
    Veri bilimi
    etiği

    View full-size slide

  13. bit.ly/pasta-yesinler
    introds.org
    Veri
    görselleş-
    tirme
    Veri
    okuma
    Veri
    manipülas-
    yonu
    Keşifsel
    veri analizi
    Sonuçlan-
    dırma
    Modelleme Kestirim
    Sonuç
    çıkarma
    Veri bilimi
    etiği

    View full-size slide

  14. bit.ly/pasta-yesinler
    introds.org
    Veri
    görselleş-
    tirme
    Veri
    okuma
    Veri
    manipülas-
    yonu
    Keşifsel
    veri analizi
    Sonuçlan-
    dırma
    Modelleme Kestirim
    Sonuç
    çıkarma
    İleriye
    bakış
    Veri bilimi
    etiği

    View full-size slide

  15. bit.ly/pasta-yesinler
    tasarım
    ilkesi
    5

    View full-size slide

  16. bit.ly/pasta-yesinler
    Q Hangi mutfakta pasta
    yapmayı tercih edersiniz?

    View full-size slide

  17. bit.ly/pasta-yesinler
    Q Hangi mutfakta pasta
    yapmayı tercih edersiniz?

    View full-size slide

  18. bit.ly/pasta-yesinler
    birinci
    günü
    değerlendir
    1

    View full-size slide

  19. bit.ly/pasta-yesinler
    R yükle
    RStudio yükle
    Bu paketleri yükle:
    tidyverse
    rmarkdown

    git yükle
    rstudio.cloud’a git
    Oturum aç
    > merhaba R!

    View full-size slide

  20. bit.ly/pasta-yesinler
    → →


    → →

    View full-size slide

  21. bit.ly/pasta-yesinler
    Q Pasta tariflerinizi nasıl
    tercih edersiniz? Yalnızca
    kelimelerle mi yoksa
    resimlerle de mi?

    View full-size slide

  22. bit.ly/pasta-yesinler
    Q Pasta tariflerinizi nasıl
    tercih edersiniz? Yalnızca
    kelimelerle mi yoksa
    resimlerle de mi?

    View full-size slide

  23. bit.ly/pasta-yesinler
    pasta
    ile
    başla
    2

    View full-size slide

  24. bit.ly/pasta-yesinler
    # Declare variables
    x <- 8
    y <- "monkey"
    z <- FALSE
    class(x)
    #> [1] "numeric"
    class(y)
    #> [1] “character"
    class(z)
    #> [1] "logical"
    Aşağıdaki değişkenleri bildirin
    Ardından, her bir değişkenin
    sınıfını belirleyin
    Bugünkü demo projeyi açın
    Belgeyi knit edin ve sonuçları sınıf arkadaşlarınızla tartışın
    Sonra Türkiye'yi başka bir ülkeyle değiştirin ve tekrar
    görselleştirin

    View full-size slide

  25. bit.ly/pasta-yesinler
    harika örnekler,
    bol miktarda kod ile gelir ...

    View full-size slide

  26. bit.ly/pasta-yesinler
    ama elimizdeki göreve odaklanalım ...
    Bugünkü demo projeyi açın
    Belgeyi knit edin ve sonuçları sınıf arkadaşlarınızla tartışın
    Sonra Türkiye'yi başka bir ülkeyle değiştirin ve tekrar görselleştirin

    View full-size slide

  27. un_votes %>%
    filter(country %in% c("United States of America", "Turkey")) %>%
    inner_join(un_roll_calls, by = "rcid") %>%
    inner_join(un_roll_call_issues, by = "rcid") %>%
    group_by(country, year = year(date), issue) %>%
    summarize(
    votes = n(),
    percent_yes = mean(vote == "yes")
    ) %>%
    filter(votes > 5) %>%
    ggplot(mapping = aes(x = year, y = percent_yes, color = country)) +
    geom_point() +
    geom_smooth(method = "loess", se = FALSE) +
    facet_wrap(~ issue, labeller = label_wrap_gen(20)) +
    labs(
    title = "BM Genel Kurulu'nda 'Evet' oylarının yüzdesi",
    subtitle = "1946 - 2015",
    y = "'Evet' yüzdesi",
    x = "Yıl",
    color = "Ülke"
    )

    View full-size slide

  28. un_votes %>%
    filter(country %in% c("United States of America", "Turkey")) %>%
    inner_join(un_roll_calls, by = "rcid") %>%
    inner_join(un_roll_call_issues, by = "rcid") %>%
    group_by(country, year = year(date), issue) %>%
    summarize(
    votes = n(),
    percent_yes = mean(vote == "yes")
    ) %>%
    filter(votes > 5) %>%
    ggplot(mapping = aes(x = year, y = percent_yes, color = country)) +
    geom_point() +
    geom_smooth(method = "loess", se = FALSE) +
    facet_wrap(~ issue, labeller = label_wrap_gen(20)) +
    labs(
    title = "BM Genel Kurulu'nda 'Evet' oylarının yüzdesi",
    subtitle = "1946 - 2015",
    y = "'Evet' yüzdesi",
    x = "Yıl",
    color = "Ülke"
    )

    View full-size slide

  29. un_votes %>%
    filter(country %in% c("United States of America", "Turkey")) %>%
    inner_join(un_roll_calls, by = "rcid") %>%
    inner_join(un_roll_call_issues, by = "rcid") %>%
    group_by(country, year = year(date), issue) %>%
    summarize(
    votes = n(),
    percent_yes = mean(vote == "yes")
    ) %>%
    filter(votes > 5) %>%
    ggplot(mapping = aes(x = year, y = percent_yes, color = country)) +
    geom_point() +
    geom_smooth(method = "loess", se = FALSE) +
    facet_wrap(~ issue, labeller = label_wrap_gen(20)) +
    labs(
    title = "BM Genel Kurulu'nda 'Evet' oylarının yüzdesi",
    subtitle = "1946 - 2015",
    y = "'Evet' yüzdesi",
    x = "Yıl",
    color = "Ülke"
    )
    France

    View full-size slide

  30. bit.ly/pasta-yesinler

    View full-size slide

  31. bit.ly/pasta-yesinler
    Q Hangisi sizi yemek yapmayı
    öğrenmek için daha çok motive
    ediyor: mükemmel doğranmış
    soğan mı yoksa ratatouille mi?

    View full-size slide

  32. bit.ly/pasta-yesinler
    Q

    Hangisi sizi yemek yapmayı
    öğrenmek için daha çok motive
    ediyor: mükemmel doğranmış
    soğan mı yoksa ratatouille mi?

    View full-size slide

  33. bit.ly/pasta-yesinler
    bebek
    adımlarını
    atla
    3

    View full-size slide

  34. bit.ly/pasta-yesinler
    Oylamanın bir değişiklik üzerinde
    olup olmadığını gösteren bir
    görselleştirme oluşturun.

    View full-size slide

  35. bit.ly/pasta-yesinler
    önemsli örnekler motive edici olabilir,
    ama dan kaçınılması gerekiyor!
    @#$%
    Baykuş nasıl çizilir
    1. Birkaç daire çizin 2. Baykuşun geri kalanını çizin

    View full-size slide

  36. bit.ly/pasta-yesinler
    @#$%
    iskele kur +
    katman ekle
    Baykuş nasıl çizilir
    1. Birkaç daire çizin 2. Baykuşun geri kalanını çizin

    View full-size slide

  37. bit.ly/pasta-yesinler
    turkey_votes <- un_votes %>%
    filter(country %in% c("Turkey")) %>%
    inner_join(un_roll_calls, by = "rcid") %>%
    inner_join(un_roll_call_issues, by = "rcid") %>%
    mutate(
    importantvote = ifelse(importantvote == 0, "Hayır", "Evet"),
    issue = case_when(
    issue == "Human rights" ~ "İnsan hakları",
    issue == "Economic development" ~ "Ekonomik gelişme",
    issue == "Colonialism" ~ "Sömürgecilik",
    issue == "Palestinian conflict" ~ "Filistin çatışması",
    issue == "Nuclear weapons and nuclear material" ~ "Nükleer silahlar ve malzemeler",
    issue == "Arms control and disarmament" ~ "Silah kontrolü ve silahsızlanma"
    ),
    vote = case_when(
    vote == "yes" ~ "Evet",
    vote == "abstain" ~ "Çekimser",
    vote == "no" ~ "Hayır"
    ),
    vote = fct_relevel(vote, "Evet", "Çekimser", "Hayır")
    )
    Pre-process

    View full-size slide

  38. bit.ly/pasta-yesinler
    ggplot(turkey_votes)

    View full-size slide

  39. bit.ly/pasta-yesinler
    ggplot(turkey_votes,
    aes(y = importantvote, fill = vote))

    View full-size slide

  40. bit.ly/pasta-yesinler
    ggplot(turkey_votes,
    aes(y = importantvote, fill = vote)) +
    geom_bar(position = "fill")

    View full-size slide

  41. bit.ly/pasta-yesinler
    ggplot(turkey_votes,
    aes(y = importantvote, fill = vote)) +
    geom_bar(position = "fill") +
    facet_wrap(~ issue, ncol = 1)

    View full-size slide

  42. bit.ly/pasta-yesinler
    ggplot(turkey_votes,
    aes(y = importantvote, fill = vote)) +
    geom_bar(position = "fill") +
    facet_wrap(~ issue, ncol = 1) +
    scale_fill_viridis_d(option = "E")

    View full-size slide

  43. bit.ly/pasta-yesinler
    ggplot(turkey_votes,
    aes(y = importantvote, fill = vote)) +
    geom_bar(position = “fill”) +
    facet_wrap(~ issue, ncol = 1) +
    scale_fill_viridis_d(option = "E") +
    scale_x_continuous(labels = label_percent())

    View full-size slide

  44. bit.ly/pasta-yesinler
    ggplot(turkey_votes,
    aes(y = importantvote, fill = vote)) +
    geom_bar(position = “fill”) +
    facet_wrap(~ issue, ncol = 1) +
    scale_fill_viridis_d(option = "E") +
    scale_x_continuous(labels = label_percent()) +
    labs(
    title = "Türkiye BM'de nasıl oy kullandı?",
    subtitle = "Oyun konusu ve önemi ile",
    y = "Önemli oy", x = NULL, fill = “Oy"
    )

    View full-size slide

  45. bit.ly/pasta-yesinler
    geri koy
    bebek
    adımlarını
    atla

    View full-size slide

  46. bit.ly/pasta-yesinler
    Q Hangisinin brokoliyi hiç
    denememiş birine hitap
    etme olasılığı daha yüksektir?

    View full-size slide

  47. bit.ly/pasta-yesinler
    Q

    Hangisinin brokoliyi hiç
    denememiş birine hitap
    etme olasılığı daha yüksektir?

    View full-size slide

  48. bit.ly/pasta-yesinler
    sebzeleri
    sakla
    4

    View full-size slide

  49. bit.ly/pasta-yesinler
    Konu: Web kazıma
    Araçlar:
    rvest
    Kurallı ifadeler
    Bugün bununla başlıyoruz: ve bununla bitiriyoruz:

    View full-size slide

  50. bit.ly/pasta-yesinler
    öğrenciler yol boyunca birçok yeni
    zorlukla karşılaşacaktır —
    bunun olmasına izin verin
    ve sonra bir çözüm sağlayın

    View full-size slide

  51. bit.ly/pasta-yesinler
    Ders: Yapılandırılmış bir tabloyu
    R'de bir veri çerçevesine
    dönüştürmek için web kazıma
    temelleri.

    View full-size slide

  52. bit.ly/pasta-yesinler
    Alıştırma 1: Tabloyu web'den kazıyın
    ve veri çerçevesi olarak kaydedin.
    Ders: Yapılandırılmış bir tabloyu
    R'de bir veri çerçevesine
    dönüştürmek için web kazıma
    temelleri.

    View full-size slide

  53. bit.ly/pasta-yesinler
    Ders: Yapılandırılmış bir tabloyu
    R'de bir veri çerçevesine
    dönüştürmek için web kazıma
    temelleri.
    Alıştırma 1: Tabloyu web'den kazıyın
    ve veri çerçevesi olarak kaydedin.
    Alıştırma 2: Aşağıdaki görselleştirmeyi oluşturmak
    için başka hangi bilgileri değişken olarak temsil
    etmemiz gerekir?

    View full-size slide

  54. bit.ly/pasta-yesinler
    Lesson: “Sadece yeteri kadar” kurallı
    ifadeler
    Alıştırma 2: Aşağıdaki görselleştirmeyi oluşturmak
    için başka hangi bilgileri değişken olarak temsil
    etmemiz gerekir?
    Alıştırma 1: Tabloyu web'den kazıyın
    ve veri çerçevesi olarak kaydedin.
    Ders: Yapılandırılmış bir tabloyu
    R'de bir veri çerçevesine
    dönüştürmek için web kazıma
    temelleri.

    View full-size slide

  55. bit.ly/pasta-yesinler
    Q Pasta yapmayı öğrendikten
    sonra, hangisini yapmak
    daha kolay olur?

    View full-size slide

  56. bit.ly/pasta-yesinler
    Q

    Pasta yapmayı öğrendikten
    sonra, hangisini yapmak
    daha kolay olur?

    View full-size slide

  57. bit.ly/pasta-yesinler
    ekosistemi
    kullan
    5

    View full-size slide

  58. bit.ly/pasta-yesinler
    öğrenci + eğitmen eğitmen
    learnr
    ...

    View full-size slide

  59. bit.ly/pasta-yesinler

    View full-size slide

  60. bit.ly/pasta-yesinler
    Önce pasta yesinler!*
    mine-cetinkaya-rundel
    [email protected]
    @minebocek
    * Malzemeleri daha sonra
    ekleyebilirsiniz!
    bit.ly/pasta-yesinler
    bit.ly/repo-eat-cake

    View full-size slide