Import data
# csv file
data <- read_csv("../00_data/myData.csv")
data
## # A tibble: 2,051 × 16
## date_long year id_no country region source latitude longitude magnitude_body
## <dbl> <dbl> <dbl> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 19450716 1945 45001 USA ALAMO… DOE 32.5 -106. 0
## 2 19450805 1945 45002 USA HIROS… DOE 34.2 132. 0
## 3 19450809 1945 45003 USA NAGAS… DOE 32.4 130. 0
## 4 19460630 1946 46001 USA BIKINI DOE 11.4 165. 0
## 5 19460724 1946 46002 USA BIKINI DOE 11.4 165. 0
## 6 19480414 1948 48001 USA ENEWE… DOE 11.3 162. 0
## 7 19480430 1948 48002 USA ENEWE… DOE 11.3 162. 0
## 8 19480514 1948 48003 USA ENEWE… DOE 11.3 162. 0
## 9 19490829 1949 49001 USSR SEMI … DOE 48 76 0
## 10 19510127 1951 51001 USA NTS DOE 37 -116 0
## # ℹ 2,041 more rows
## # ℹ 7 more variables: magnitude_surface <dbl>, depth <dbl>, yield_lower <dbl>,
## # yield_upper <dbl>, purpose <chr>, name <chr>, type <chr>
Apply the following dplyr verbs to your data
Filter rows
dplyr::filter(data, country == "USA")
## # A tibble: 1,032 × 16
## date_long year id_no country region source latitude longitude magnitude_body
## <dbl> <dbl> <dbl> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 19450716 1945 45001 USA ALAMO… DOE 32.5 -106. 0
## 2 19450805 1945 45002 USA HIROS… DOE 34.2 132. 0
## 3 19450809 1945 45003 USA NAGAS… DOE 32.4 130. 0
## 4 19460630 1946 46001 USA BIKINI DOE 11.4 165. 0
## 5 19460724 1946 46002 USA BIKINI DOE 11.4 165. 0
## 6 19480414 1948 48001 USA ENEWE… DOE 11.3 162. 0
## 7 19480430 1948 48002 USA ENEWE… DOE 11.3 162. 0
## 8 19480514 1948 48003 USA ENEWE… DOE 11.3 162. 0
## 9 19510127 1951 51001 USA NTS DOE 37 -116 0
## 10 19510128 1951 51002 USA NTS DOE 37 -116 0
## # ℹ 1,022 more rows
## # ℹ 7 more variables: magnitude_surface <dbl>, depth <dbl>, yield_lower <dbl>,
## # yield_upper <dbl>, purpose <chr>, name <chr>, type <chr>
Arrange rows
arrange(data, desc(year))
## # A tibble: 2,051 × 16
## date_long year id_no country region source latitude longitude magnitude_body
## <dbl> <dbl> <dbl> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 19980511 1998 98001 INDIA POKHR… HFS 27.1 71.7 5.3
## 2 19980513 1998 98003 INDIA POKHR… NRD 27.1 71.7 0
## 3 19980528 1998 98004 PAKIST CHAGAI HFS 28.9 64.9 0
## 4 19980530 1998 98005 PAKIST KHARAN HFS 28.5 63.8 5
## 5 19960127 1996 96001 FRANCE FANGA… WTN -22.2 -139. 0
## 6 19960608 1996 96002 CHINA LOP N… HFS 41.6 88.8 6.3
## 7 19960729 1996 96003 CHINA LOP N… HFS 41.7 88.4 5.3
## 8 19950515 1995 95001 CHINA LOP N… HFS 41.6 88.8 6.5
## 9 19950817 1995 95002 CHINA LOP N… HFS 41.6 88.8 6.4
## 10 19950905 1995 95003 FRANCE MURUR… WTN -21.9 -139. 0
## # ℹ 2,041 more rows
## # ℹ 7 more variables: magnitude_surface <dbl>, depth <dbl>, yield_lower <dbl>,
## # yield_upper <dbl>, purpose <chr>, name <chr>, type <chr>
Select columns
select(data, year, country, region, yield_upper)
## # A tibble: 2,051 × 4
## year country region yield_upper
## <dbl> <chr> <chr> <dbl>
## 1 1945 USA ALAMOGORDO 21
## 2 1945 USA HIROSHIMA 15
## 3 1945 USA NAGASAKI 21
## 4 1946 USA BIKINI 21
## 5 1946 USA BIKINI 21
## 6 1948 USA ENEWETAK 37
## 7 1948 USA ENEWETAK 49
## 8 1948 USA ENEWETAK 18
## 9 1949 USSR SEMI KAZAKH 22
## 10 1951 USA NTS 1
## # ℹ 2,041 more rows
Add columns
mutate(data,
yield_avg = (yield_lower + yield_upper) / 2) %>%
select(year, country, yield_lower, yield_upper, yield_avg)
## # A tibble: 2,051 × 5
## year country yield_lower yield_upper yield_avg
## <dbl> <chr> <dbl> <dbl> <dbl>
## 1 1945 USA 21 21 21
## 2 1945 USA 15 15 15
## 3 1945 USA 21 21 21
## 4 1946 USA 21 21 21
## 5 1946 USA 21 21 21
## 6 1948 USA 37 37 37
## 7 1948 USA 49 49 49
## 8 1948 USA 18 18 18
## 9 1949 USSR 22 22 22
## 10 1951 USA 1 1 1
## # ℹ 2,041 more rows
Summarize by groups
summarise(data, avg_yield = mean(yield_upper, na.rm = TRUE))
## # A tibble: 1 × 1
## avg_yield
## <dbl>
## 1 323.