# 周次:w7
# 任務:認識資料結構
# 姓名:趙晴如
# 日期:2021年03月19日
### 題組一 因素向量
# 建立一個文字向量 speed_char 描述速度的快慢
speed_char <- c("slow", "fast")
speed_char
## [1] "slow" "fast"
# 使用 factor() 函數轉換成因素向量 `speed_factor`,並且讓快慢有排序(慢 < 快)
speed_factor <- factor(speed_char,ordered=TRUE,
levels=c("slow","fast"))
speed_factor
## [1] slow fast
## Levels: slow < fast
class(speed_factor)
## [1] "ordered" "factor"
### 題組二 矩陣、陣列
# 建立一個矩陣叫做 `my_mat`,它是一個 3x3 的矩陣,裡面有 1 到 9 這些數字
my_mat<-matrix(1:9,nrow=3)
my_mat
## [,1] [,2] [,3]
## [1,] 1 4 7
## [2,] 2 5 8
## [3,] 3 6 9
# 利用 `[m, n]`索引功能把 8 選出來
my_mat[2,3]
## [1] 8
# 利用 `[m, n]`索引功能把 第二行的內容印出來
my_mat[2,]
## [1] 2 5 8
# 利用 `[m, n]`索引功能把 第一欄的內容印出來
my_mat[,1]
## [1] 1 2 3
# 將矩陣的數字順序變成水平排列
my_mat<-matrix(1:9,nrow=3,byrow=TRUE)
my_mat
## [,1] [,2] [,3]
## [1,] 1 2 3
## [2,] 4 5 6
## [3,] 7 8 9
# 對矩陣進行篩選,選出奇數(1、3、5、7、9)
my_mat <- matrix(1:9, nrow = 3)
filter <- my_mat %% 2 == 1
my_mat[filter]
## [1] 1 3 5 7 9
# 建立一個陣列叫做 `my_arr`,它是2個 3x3 的矩陣,裡面有 1 到 9 這些數字
my_arr<-array(1:8,dim = c(3,3,2))
my_arr
## , , 1
##
## [,1] [,2] [,3]
## [1,] 1 4 7
## [2,] 2 5 8
## [3,] 3 6 1
##
## , , 2
##
## [,1] [,2] [,3]
## [1,] 2 5 8
## [2,] 3 6 1
## [3,] 4 7 2
### 題組三 資料框
# 已建好以下資訊
team_name <- c("Chicago Bulls", "Golden State Warriors")
wins <- c(72, 73)
losses <- c(10, 9)
is_champion <- c(TRUE, FALSE)
season <- c("1995-96", "2015-16")
# 請建立一個名為`great_nba_teams` 的資料框
great_nba_teams<-data.frame(team_name,wins,losses,
is_champion,season,
stringsAsFactors = FALSE)
great_nba_teams
## team_name wins losses is_champion season
## 1 Chicago Bulls 72 10 TRUE 1995-96
## 2 Golden State Warriors 73 9 FALSE 2015-16
# 檢視資料框內容
# 檢視資料框的資料結構
# 請您分別利用 $變數名稱 與 [, "變數名稱"] 將 is_champion 變數挑出來
# 1. 利用 $變數名稱
# 2. 利用`[, "變數名稱"]`
# 利用 `[m, n]`索引功能把第2個觀測值的內容印出來
# 題組四 清單
# 我們已經建立好幾個物件
title <- "Worst NBA Teams"
teams <- c("Charlotte Bobcats", "Philadelphia 76ers")
wins <- c(7, 9)
losses <- c(59, 73)