Bang-bang!!

dplyr ile Programlama

Dr. Chester Ismay

Educator, Data Scientist, and R/Python Consultant

Kıvırcık-parantezi açma

grouped_mean_gov_revenue <- function(group_col) {
  joined %>% 
    group_by({{ group_col }}) %>% 
    summarize(mean_gov_revenue = mean(gov_revenue_as_perc_gdp))
}
grouped_mean_gov_revenue(group_col = continent)

{{ }}

  • Fonksiyon argümanını zorlar
  • Fonksiyon argümanını etkisizleştirir
dplyr ile Programlama

Bang-bang-enquo zorlar ve etkisizleştirir

!!enquo() {{ }} ile aynıdır

grouped_mean_gov_revenue <- function(group_col) {
  joined %>% 
    group_by(!!enquo(group_col)) %>% 
    summarize(
      mean_gov_revenue = mean(
        gov_revenue_as_perc_gdp
      )
   )
}
grouped_mean_gov_revenue(group_col = continent)
# A tibble: 17 × 2
    year mean_gov_revenue
   <dbl>            <dbl>
 1  2000             39.4
 2  2001             30.8
...
16  2015             34.7
17  2016             32.3
dplyr ile Programlama

Birden çok fonksiyon argümanı

grouped_mean_gov_revenue <- function(group_col) {
  joined %>% 
    group_by(!!enquo(group_col)) %>% 
    summarize(mean_gov_revenue = mean(gov_revenue_as_perc_gdp))
}
grouped_mean_for_column <- function(group_col, col_to_mean) {

joined %>% group_by(!!enquo(group_col)) %>%
summarize(mean(!!enquo(col_to_mean))) }
dplyr ile Programlama

grouped_mean_for_column() çağrısı

grouped_mean_for_column(group_col = continent,
                        col_to_mean = perc_cvd_crd_70)
# A tibble: 5 × 2
  continent `mean(perc_cvd_crd_70)`
  <fct>                       <dbl>
1 Africa                      23.8 
2 Americas                    14.7 
3 Asia                        19.8 
4 Europe                      16.3 
5 Oceania                      9.91
dplyr ile Programlama

Hadi pratik yapalım!

dplyr ile Programlama

Preparing Video For Download...