SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
6
2020 3 8
1 1
2 1
2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 5
3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.1 if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.2 ifelse() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1.3 switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.1 for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.2 while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.4 apply . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1
•
•
2
csv
read.csv() data.frame()
1
2.1 6
2.1
function() Hello World!
hello() 1
+ +
> hello <- function() { #
+ cat("Hello Worldn")
+ }
> hello() #
Hello World
function() { }
function() ( )
name
> hello <- function(name) {
+ cat (" ", name, "n", sep="")
+ }
> hello(" !")
!
> add <- function (x, y) {
+ x + y
+ }
> add(10, 5)
[1] 15
add() x y
add(10, 5) 10 5
2.2
> calc <- function (x, y) {
+ x * y
+ x - y
+ x + y # calc
I 2
2.3 6
+ }
> calc (3, 4)
[1] 7
return()
> calc <- function (x, y) {
+ x * y
+ x - y
+ return(x + y) #
+ }
> calc (1, 2)
[1] 3
return() 2
> calc <- function (x, y) {
+ x * y
+ return(x - y) # x-y
+ x + y #
+ }
> calc (1, 2)
[1] -1
2.3
hello() name " "
hello() name " "
> hello <- function(name=" ") { # name
+ cat (" ", name, "n", sep="")
+ }
> hello() # name
> hello(" !") # name !
!
name birthday
I 3
2.4 6
> greeting <- function(name, birthday, greet=" ", to=" ") {
+ str <- paste(to, " ", greet, " ",
+ " ", name, " ",
+ " ", birthday, " ", sep="")
+ str
+ }
> greeting(" ", "4 1 ") # greet to
[1] " 4 1 "
str str
R str
str
greeting()
> greeting(" ", "4 1 ", " ") # to
[1] " 4 1 "
> greeting(" ", "4 1 ", " ", " ")
[1] " 4 1 "
greet 3 greet
> greeting(" ", "4 1 ", " ")
[1] " 4 1 "
> greeting(" ", "4 1 ", to=" ")
[1] " 4 1 "
> greeting(greet=" ", name=" ", to=" ", birthday="4 1 ")
[1] " 4 1 "
2.4
greeting() g
g() greeting()
I 4
6
> g <- greeting
> g(name=" ", birthday="4 ")
[1] " 4 "
add() adder()
x y add
> add <- function(x, y, adder) {
+ adder(x, y)
+ }
add add.num() add add.str()
> add.num <- function(x, y) {
+ x + y #
+ }
> add.str <- function(x, y) {
+ paste(x, y) #
+ }
add()
> add(1, 5, add.num)
[1] 6
> add("a", "b", add.str)
[1] "a b"
> add("a", "b", function(x, y) {paste(x, y, sep="+")})
[1] "a+b"
3
I 5
3.1 6
3.1
3.1.1 if
TRUE FALSE if if
> absolute.value <- function(x) {
+ if (x > 0) {
+ x # x > 0 TRUE x
+ } else {
+ -x # x > 0 FALSE x
+ }
+ }
> absolute.value(5)
[1] 5
> absolute.value(-9)
[1] 9
TRUE return(x) x
FALSE else
> absolute.value <- function(x) {
+ if (x > 0) {
+ return(x) # x > 0 TRUE x
+ }
+ -x # x > 0 FALSE x
+ }
> absolute.value(-100)
[1] 100
> absolute.value(4)
[1] 4
if-else 90 A 80
B 60 C D grade()
> grade <- function(score) {
+ if (score >= 90) {
+ "A"
+ } else if (score >= 80) {
+ "B"
+ } else if (score >= 60) {
+ "C"
+ } else {
+ "D"
+ }
+ }
> grade(100)
[1] "A"
I 6
3.1 6
> grade(34)
[1] "D"
> grade(65)
[1] "C"
> grade(83)
[1] "B"
grade() else if { } else if
1 1
> grade <- function(score) {
+ if (score >= 90) {
+ "A"
+ } else {
+ if (score >= 80) {
+ "B"
+ } else {
+ if (score >= 60) {
+ "C"
+ } else {
+ "D"
+ }
+ }
+ }
+ }
if grade() if else
1
> grade <- function(score) {
+ if (score >= 90)
+ "A"
+ else if (score >= 80)
+ "B"
+ else if (score >= 60)
+ "C"
+ else
+ "D"
+ }
3.1.2 ifelse()
if-else ifelse() ifelse()
ifelse()
I 7
3.2 6
ifelse( , , )
> absolute.value <- function(x) { # ifelse
+ ifelse(x > 0, x, -x)
+ }
> grade <- function(score) { # ifelse
+ ifelse(score >= 90, "A",
+ ifelse(score >= 80, "B",
+ ifelse(score >= 60, "C", "D")))
+ }
ifelse()
3.1.3 switch
if-else 2 switch()
switch( , 1, 2, 3, ...)
1
> switch(3, " 1", " 2", " 3", " 4") # 3
[1] " 3"
> switch("b", a=" 1", b=" 2", c=" 3") # b
[1] " 2"
3.2
R for while
R 3.4 apply
3.2.1 for
for
for(i in )
i i
{ }
I 8
3.2 6
> z <- 0 # z 0
> for(i in 1:10) {
+ z <- z + i # 1 10
+ }
> z # for z
[1] 55
> for(n in c("a", "b", "c", "d")) #
+ cat(toupper(n), "n") # toupper()
A
B
C
D
for 2
> for(i in 1:5) {
+ for(j in 1:5)
+ cat(i, "-", j, ", ", sep="")
+ cat("n")
+ }
1-1, 1-2, 1-3, 1-4, 1-5,
2-1, 2-2, 2-3, 2-4, 2-5,
3-1, 3-2, 3-3, 3-4, 3-5,
4-1, 4-2, 4-3, 4-4, 4-5,
5-1, 5-2, 5-3, 5-4, 5-5,
3.2.2 while
while
> countdown <- function(n) { # n 0
+ while (n != 0) {
+ cat(n, ", ", sep="")
+ n <- ifelse (n >= 0, n-1, n+1) # n
+ }
+ cat("0n")
+ }
> countdown(10)
10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
> countdown(-5)
-5, -4, -3, -2, -1, 0
I 9
3.3 6
3.3
(1) (7) 3 GDP
ppp GDP
compare.gdp() 2010
> compare.gdp(ppp, 2010)
Qatar 117518.7
Japan 34986.99
Congo, Dem. Rep. 646.2954
(2) x y gcd(x, y)
3.4 apply
for while
R apply
apply 1
1 2 4 ? 3 2 ?
I 10

Más contenido relacionado

La actualidad más candente

第3回 データフレームの基本操作 その1(解答付き)
第3回 データフレームの基本操作 その1(解答付き)第3回 データフレームの基本操作 その1(解答付き)
第3回 データフレームの基本操作 その1(解答付き)Wataru Shito
 
第3回 データフレームの基本操作 その1
第3回 データフレームの基本操作 その1第3回 データフレームの基本操作 その1
第3回 データフレームの基本操作 その1Wataru Shito
 
第1回 Rプログラミングを始めよう(解答付き)
第1回 Rプログラミングを始めよう(解答付き)第1回 Rプログラミングを始めよう(解答付き)
第1回 Rプログラミングを始めよう(解答付き)Wataru Shito
 
第1回 Rプログラミングを始めよう
第1回 Rプログラミングを始めよう第1回 Rプログラミングを始めよう
第1回 Rプログラミングを始めようWataru Shito
 
第4章 確率的学習---単純ベイズを使った分類
第4章 確率的学習---単純ベイズを使った分類第4章 確率的学習---単純ベイズを使った分類
第4章 確率的学習---単純ベイズを使った分類Wataru Shito
 
solucionario de purcell 3
solucionario de purcell 3solucionario de purcell 3
solucionario de purcell 3José Encalada
 
第3章 遅延学習---最近傍法を使った分類
第3章 遅延学習---最近傍法を使った分類第3章 遅延学習---最近傍法を使った分類
第3章 遅延学習---最近傍法を使った分類Wataru Shito
 
Titles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలు
Titles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలుTitles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలు
Titles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలుShalem Arasavelli
 
ఆదికాండము సర్వే.pdf
ఆదికాండము సర్వే.pdfఆదికాండము సర్వే.pdf
ఆదికాండము సర్వే.pdfDr. Johnson Satya
 
పాల్ vs పేతురు
పాల్ vs పేతురుపాల్ vs పేతురు
పాల్ vs పేతురుDr. Johnson Satya
 
పరిశుద్ధాత్మ దేవుడు
పరిశుద్ధాత్మ దేవుడు పరిశుద్ధాత్మ దేవుడు
పరిశుద్ధాత్మ దేవుడు Dr. Johnson Satya
 
統計的推定の基礎 1 -- 期待値の推定
統計的推定の基礎 1 -- 期待値の推定統計的推定の基礎 1 -- 期待値の推定
統計的推定の基礎 1 -- 期待値の推定Wataru Shito
 
యోవేలు గ్రంథ ధ్యానములు
యోవేలు గ్రంథ ధ్యానములు యోవేలు గ్రంథ ధ్యానములు
యోవేలు గ్రంథ ధ్యానములు Dr. Johnson Satya
 
Cuaderno complementario evaluacion_3_ep_3
Cuaderno complementario evaluacion_3_ep_3Cuaderno complementario evaluacion_3_ep_3
Cuaderno complementario evaluacion_3_ep_3Santiago Campos zurano
 
ایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeer
ایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeerایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeer
ایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeerQuran Juz (Para)
 
Multiplying Polynomials
Multiplying PolynomialsMultiplying Polynomials
Multiplying Polynomialsmlynczyk
 
Adding+Subtracting Polynomials
Adding+Subtracting PolynomialsAdding+Subtracting Polynomials
Adding+Subtracting Polynomialsmlynczyk
 

La actualidad más candente (20)

第3回 データフレームの基本操作 その1(解答付き)
第3回 データフレームの基本操作 その1(解答付き)第3回 データフレームの基本操作 その1(解答付き)
第3回 データフレームの基本操作 その1(解答付き)
 
第3回 データフレームの基本操作 その1
第3回 データフレームの基本操作 その1第3回 データフレームの基本操作 その1
第3回 データフレームの基本操作 その1
 
第1回 Rプログラミングを始めよう(解答付き)
第1回 Rプログラミングを始めよう(解答付き)第1回 Rプログラミングを始めよう(解答付き)
第1回 Rプログラミングを始めよう(解答付き)
 
第1回 Rプログラミングを始めよう
第1回 Rプログラミングを始めよう第1回 Rプログラミングを始めよう
第1回 Rプログラミングを始めよう
 
第4章 確率的学習---単純ベイズを使った分類
第4章 確率的学習---単純ベイズを使った分類第4章 確率的学習---単純ベイズを使った分類
第4章 確率的学習---単純ベイズを使った分類
 
solucionario de purcell 3
solucionario de purcell 3solucionario de purcell 3
solucionario de purcell 3
 
第3章 遅延学習---最近傍法を使った分類
第3章 遅延学習---最近傍法を使った分類第3章 遅延学習---最近傍法を使った分類
第3章 遅延学習---最近傍法を使った分類
 
Titles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలు
Titles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలుTitles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలు
Titles in the Book of Psalms - Telugu కీర్తనల గ్రంథంలో శీర్షికలు
 
ఆదికాండము సర్వే.pdf
ఆదికాండము సర్వే.pdfఆదికాండము సర్వే.pdf
ఆదికాండము సర్వే.pdf
 
పాల్ vs పేతురు
పాల్ vs పేతురుపాల్ vs పేతురు
పాల్ vs పేతురు
 
పరిశుద్ధాత్మ దేవుడు
పరిశుద్ధాత్మ దేవుడు పరిశుద్ధాత్మ దేవుడు
పరిశుద్ధాత్మ దేవుడు
 
統計的推定の基礎 1 -- 期待値の推定
統計的推定の基礎 1 -- 期待値の推定統計的推定の基礎 1 -- 期待値の推定
統計的推定の基礎 1 -- 期待値の推定
 
Modul 1 functions
Modul 1 functionsModul 1 functions
Modul 1 functions
 
యోవేలు గ్రంథ ధ్యానములు
యోవేలు గ్రంథ ధ్యానములు యోవేలు గ్రంథ ధ్యానములు
యోవేలు గ్రంథ ధ్యానములు
 
Cuaderno complementario evaluacion_3_ep_3
Cuaderno complementario evaluacion_3_ep_3Cuaderno complementario evaluacion_3_ep_3
Cuaderno complementario evaluacion_3_ep_3
 
100 Derivatives.pdf
100 Derivatives.pdf100 Derivatives.pdf
100 Derivatives.pdf
 
ایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeer
ایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeerایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeer
ایمان کی مضبوط ترین زنجیر | Iman ki mazboot tarin zanjeer
 
Taller9 final
Taller9 finalTaller9 final
Taller9 final
 
Multiplying Polynomials
Multiplying PolynomialsMultiplying Polynomials
Multiplying Polynomials
 
Adding+Subtracting Polynomials
Adding+Subtracting PolynomialsAdding+Subtracting Polynomials
Adding+Subtracting Polynomials
 

Similar a 第6回 関数とフロー制御

سلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اولسلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اولأمنية وجدى
 
The Ring programming language version 1.9 book - Part 69 of 210
The Ring programming language version 1.9 book - Part 69 of 210The Ring programming language version 1.9 book - Part 69 of 210
The Ring programming language version 1.9 book - Part 69 of 210Mahmoud Samir Fayed
 
The Ring programming language version 1.5.3 book - Part 69 of 184
The Ring programming language version 1.5.3 book - Part 69 of 184The Ring programming language version 1.5.3 book - Part 69 of 184
The Ring programming language version 1.5.3 book - Part 69 of 184Mahmoud Samir Fayed
 
Hand book of Howard Anton calculus exercises 8th edition
Hand book of Howard Anton calculus exercises 8th editionHand book of Howard Anton calculus exercises 8th edition
Hand book of Howard Anton calculus exercises 8th editionPriSim
 
Useful javascript
Useful javascriptUseful javascript
Useful javascriptLei Kang
 
RではじめるTwitter解析
RではじめるTwitter解析RではじめるTwitter解析
RではじめるTwitter解析Takeshi Arabiki
 
سلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اولسلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اولأمنية وجدى
 
A Course in Fuzzy Systems and Control Matlab Chapter two
A Course in Fuzzy Systems and Control Matlab Chapter twoA Course in Fuzzy Systems and Control Matlab Chapter two
A Course in Fuzzy Systems and Control Matlab Chapter twoChung Hua Universit
 
Functional Gradient Boosting based on Residual Network Perception
Functional Gradient Boosting based on Residual Network PerceptionFunctional Gradient Boosting based on Residual Network Perception
Functional Gradient Boosting based on Residual Network PerceptionAtsushi Nitanda
 
第4回 データフレームの基本操作 その2
第4回 データフレームの基本操作 その2第4回 データフレームの基本操作 その2
第4回 データフレームの基本操作 その2Wataru Shito
 
HSK 7-9 V2021 Chinese Grammar Sample.pdf
HSK 7-9 V2021 Chinese Grammar Sample.pdfHSK 7-9 V2021 Chinese Grammar Sample.pdf
HSK 7-9 V2021 Chinese Grammar Sample.pdfLEGOO MANDARIN
 

Similar a 第6回 関数とフロー制御 (20)

سلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اولسلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثانى الابتدائى ترم اول
 
The Ring programming language version 1.9 book - Part 69 of 210
The Ring programming language version 1.9 book - Part 69 of 210The Ring programming language version 1.9 book - Part 69 of 210
The Ring programming language version 1.9 book - Part 69 of 210
 
The Ring programming language version 1.5.3 book - Part 69 of 184
The Ring programming language version 1.5.3 book - Part 69 of 184The Ring programming language version 1.5.3 book - Part 69 of 184
The Ring programming language version 1.5.3 book - Part 69 of 184
 
Hand book of Howard Anton calculus exercises 8th edition
Hand book of Howard Anton calculus exercises 8th editionHand book of Howard Anton calculus exercises 8th edition
Hand book of Howard Anton calculus exercises 8th edition
 
Useful javascript
Useful javascriptUseful javascript
Useful javascript
 
11o Φ.Α. 8.1.pdf
11o Φ.Α. 8.1.pdf11o Φ.Α. 8.1.pdf
11o Φ.Α. 8.1.pdf
 
R programming language
R programming languageR programming language
R programming language
 
機械学習と自動微分
機械学習と自動微分機械学習と自動微分
機械学習と自動微分
 
RではじめるTwitter解析
RではじめるTwitter解析RではじめるTwitter解析
RではじめるTwitter解析
 
dplyr
dplyrdplyr
dplyr
 
سلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اولسلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اول
سلسلة الليالى العشر فى الرياضيات للصف الثالث الابتدائى ترم اول
 
A Course in Fuzzy Systems and Control Matlab Chapter two
A Course in Fuzzy Systems and Control Matlab Chapter twoA Course in Fuzzy Systems and Control Matlab Chapter two
A Course in Fuzzy Systems and Control Matlab Chapter two
 
Functional Gradient Boosting based on Residual Network Perception
Functional Gradient Boosting based on Residual Network PerceptionFunctional Gradient Boosting based on Residual Network Perception
Functional Gradient Boosting based on Residual Network Perception
 
0. preliminares
0. preliminares0. preliminares
0. preliminares
 
Python 1
Python 1Python 1
Python 1
 
Groovy kind of test
Groovy kind of testGroovy kind of test
Groovy kind of test
 
Groovy kind of test
Groovy kind of testGroovy kind of test
Groovy kind of test
 
Ejercicio 211 del libro de baldor
Ejercicio 211 del libro de baldorEjercicio 211 del libro de baldor
Ejercicio 211 del libro de baldor
 
第4回 データフレームの基本操作 その2
第4回 データフレームの基本操作 その2第4回 データフレームの基本操作 その2
第4回 データフレームの基本操作 その2
 
HSK 7-9 V2021 Chinese Grammar Sample.pdf
HSK 7-9 V2021 Chinese Grammar Sample.pdfHSK 7-9 V2021 Chinese Grammar Sample.pdf
HSK 7-9 V2021 Chinese Grammar Sample.pdf
 

Más de Wataru Shito

統計的推定の基礎 2 -- 分散の推定
統計的推定の基礎 2 -- 分散の推定統計的推定の基礎 2 -- 分散の推定
統計的推定の基礎 2 -- 分散の推定Wataru Shito
 
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノートWataru Shito
 
演習II.第1章 ベイズ推論の考え方 Part 3.スライド
演習II.第1章 ベイズ推論の考え方 Part 3.スライド演習II.第1章 ベイズ推論の考え方 Part 3.スライド
演習II.第1章 ベイズ推論の考え方 Part 3.スライドWataru Shito
 
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノートWataru Shito
 
演習II.第1章 ベイズ推論の考え方 Part 2.スライド
演習II.第1章 ベイズ推論の考え方 Part 2.スライド演習II.第1章 ベイズ推論の考え方 Part 2.スライド
演習II.第1章 ベイズ推論の考え方 Part 2.スライドWataru Shito
 
演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 1.講義ノートWataru Shito
 
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」Wataru Shito
 
経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」Wataru Shito
 
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」Wataru Shito
 
経済数学II 「第12章 制約つき最適化」
経済数学II 「第12章 制約つき最適化」経済数学II 「第12章 制約つき最適化」
経済数学II 「第12章 制約つき最適化」Wataru Shito
 
マクロ経済学I 「第9章 総需要 I」
マクロ経済学I 「第9章 総需要 I」マクロ経済学I 「第9章 総需要 I」
マクロ経済学I 「第9章 総需要 I」Wataru Shito
 
経済数学II 「第11章 選択変数が2個以上の場合の最適化」
経済数学II 「第11章 選択変数が2個以上の場合の最適化」経済数学II 「第11章 選択変数が2個以上の場合の最適化」
経済数学II 「第11章 選択変数が2個以上の場合の最適化」Wataru Shito
 
マクロ経済学I 「第6章 開放経済の長期分析」
マクロ経済学I 「第6章 開放経済の長期分析」マクロ経済学I 「第6章 開放経済の長期分析」
マクロ経済学I 「第6章 開放経済の長期分析」Wataru Shito
 
経済数学II 「第8章 一般関数型モデルの比較静学」
経済数学II 「第8章 一般関数型モデルの比較静学」経済数学II 「第8章 一般関数型モデルの比較静学」
経済数学II 「第8章 一般関数型モデルの比較静学」Wataru Shito
 
マクロ経済学I 「第4,5章 貨幣とインフレーション」
マクロ経済学I 「第4,5章 貨幣とインフレーション」マクロ経済学I 「第4,5章 貨幣とインフレーション」
マクロ経済学I 「第4,5章 貨幣とインフレーション」Wataru Shito
 
マクロ経済学I 「第3章 長期閉鎖経済モデル」
マクロ経済学I 「第3章 長期閉鎖経済モデル」マクロ経済学I 「第3章 長期閉鎖経済モデル」
マクロ経済学I 「第3章 長期閉鎖経済モデル」Wataru Shito
 
経済数学II 「第7章 微分法とその比較静学への応用」
経済数学II 「第7章 微分法とその比較静学への応用」経済数学II 「第7章 微分法とその比較静学への応用」
経済数学II 「第7章 微分法とその比較静学への応用」Wataru Shito
 
経済数学II 「第6章 比較静学と導関数の概念」
経済数学II 「第6章 比較静学と導関数の概念」経済数学II 「第6章 比較静学と導関数の概念」
経済数学II 「第6章 比較静学と導関数の概念」Wataru Shito
 
マクロ経済学I 「マクロ経済分析の基礎知識」
マクロ経済学I 「マクロ経済分析の基礎知識」マクロ経済学I 「マクロ経済分析の基礎知識」
マクロ経済学I 「マクロ経済分析の基礎知識」Wataru Shito
 
経済数学II 「第5章 線型モデルと行列代数 II」
経済数学II 「第5章 線型モデルと行列代数 II」経済数学II 「第5章 線型モデルと行列代数 II」
経済数学II 「第5章 線型モデルと行列代数 II」Wataru Shito
 

Más de Wataru Shito (20)

統計的推定の基礎 2 -- 分散の推定
統計的推定の基礎 2 -- 分散の推定統計的推定の基礎 2 -- 分散の推定
統計的推定の基礎 2 -- 分散の推定
 
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート
 
演習II.第1章 ベイズ推論の考え方 Part 3.スライド
演習II.第1章 ベイズ推論の考え方 Part 3.スライド演習II.第1章 ベイズ推論の考え方 Part 3.スライド
演習II.第1章 ベイズ推論の考え方 Part 3.スライド
 
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート
 
演習II.第1章 ベイズ推論の考え方 Part 2.スライド
演習II.第1章 ベイズ推論の考え方 Part 2.スライド演習II.第1章 ベイズ推論の考え方 Part 2.スライド
演習II.第1章 ベイズ推論の考え方 Part 2.スライド
 
演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート
演習II.第1章 ベイズ推論の考え方 Part 1.講義ノート
 
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
 
経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」
 
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
 
経済数学II 「第12章 制約つき最適化」
経済数学II 「第12章 制約つき最適化」経済数学II 「第12章 制約つき最適化」
経済数学II 「第12章 制約つき最適化」
 
マクロ経済学I 「第9章 総需要 I」
マクロ経済学I 「第9章 総需要 I」マクロ経済学I 「第9章 総需要 I」
マクロ経済学I 「第9章 総需要 I」
 
経済数学II 「第11章 選択変数が2個以上の場合の最適化」
経済数学II 「第11章 選択変数が2個以上の場合の最適化」経済数学II 「第11章 選択変数が2個以上の場合の最適化」
経済数学II 「第11章 選択変数が2個以上の場合の最適化」
 
マクロ経済学I 「第6章 開放経済の長期分析」
マクロ経済学I 「第6章 開放経済の長期分析」マクロ経済学I 「第6章 開放経済の長期分析」
マクロ経済学I 「第6章 開放経済の長期分析」
 
経済数学II 「第8章 一般関数型モデルの比較静学」
経済数学II 「第8章 一般関数型モデルの比較静学」経済数学II 「第8章 一般関数型モデルの比較静学」
経済数学II 「第8章 一般関数型モデルの比較静学」
 
マクロ経済学I 「第4,5章 貨幣とインフレーション」
マクロ経済学I 「第4,5章 貨幣とインフレーション」マクロ経済学I 「第4,5章 貨幣とインフレーション」
マクロ経済学I 「第4,5章 貨幣とインフレーション」
 
マクロ経済学I 「第3章 長期閉鎖経済モデル」
マクロ経済学I 「第3章 長期閉鎖経済モデル」マクロ経済学I 「第3章 長期閉鎖経済モデル」
マクロ経済学I 「第3章 長期閉鎖経済モデル」
 
経済数学II 「第7章 微分法とその比較静学への応用」
経済数学II 「第7章 微分法とその比較静学への応用」経済数学II 「第7章 微分法とその比較静学への応用」
経済数学II 「第7章 微分法とその比較静学への応用」
 
経済数学II 「第6章 比較静学と導関数の概念」
経済数学II 「第6章 比較静学と導関数の概念」経済数学II 「第6章 比較静学と導関数の概念」
経済数学II 「第6章 比較静学と導関数の概念」
 
マクロ経済学I 「マクロ経済分析の基礎知識」
マクロ経済学I 「マクロ経済分析の基礎知識」マクロ経済学I 「マクロ経済分析の基礎知識」
マクロ経済学I 「マクロ経済分析の基礎知識」
 
経済数学II 「第5章 線型モデルと行列代数 II」
経済数学II 「第5章 線型モデルと行列代数 II」経済数学II 「第5章 線型モデルと行列代数 II」
経済数学II 「第5章 線型モデルと行列代数 II」
 

Último

20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdf20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdfHuman37
 
Predictive Analysis for Loan Default Presentation : Data Analysis Project PPT
Predictive Analysis for Loan Default  Presentation : Data Analysis Project PPTPredictive Analysis for Loan Default  Presentation : Data Analysis Project PPT
Predictive Analysis for Loan Default Presentation : Data Analysis Project PPTBoston Institute of Analytics
 
NLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptx
NLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptxNLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptx
NLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptxBoston Institute of Analytics
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfgstagge
 
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024thyngster
 
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...Amil Baba Dawood bangali
 
原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档208367051
 
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSINGmarianagonzalez07
 
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDINTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDRafezzaman
 
办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一
办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一
办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一F sss
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFAAndrei Kaleshka
 
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...GQ Research
 
Advanced Machine Learning for Business Professionals
Advanced Machine Learning for Business ProfessionalsAdvanced Machine Learning for Business Professionals
Advanced Machine Learning for Business ProfessionalsVICTOR MAESTRE RAMIREZ
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Seán Kennedy
 
Top 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In QueensTop 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In Queensdataanalyticsqueen03
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一fhwihughh
 
Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Colleen Farrelly
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degreeyuu sss
 
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Jack DiGiovanna
 

Último (20)

20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdf20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdf
 
Predictive Analysis for Loan Default Presentation : Data Analysis Project PPT
Predictive Analysis for Loan Default  Presentation : Data Analysis Project PPTPredictive Analysis for Loan Default  Presentation : Data Analysis Project PPT
Predictive Analysis for Loan Default Presentation : Data Analysis Project PPT
 
NLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptx
NLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptxNLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptx
NLP Project PPT: Flipkart Product Reviews through NLP Data Science.pptx
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdf
 
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
 
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
 
原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制南十字星大学毕业证(SCU毕业证)#文凭成绩单#真实留信学历认证永久存档
 
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
 
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDINTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
 
办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一
办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一
办理学位证中佛罗里达大学毕业证,UCF成绩单原版一比一
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFA
 
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
 
Advanced Machine Learning for Business Professionals
Advanced Machine Learning for Business ProfessionalsAdvanced Machine Learning for Business Professionals
Advanced Machine Learning for Business Professionals
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...
 
Top 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In QueensTop 5 Best Data Analytics Courses In Queens
Top 5 Best Data Analytics Courses In Queens
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
 
Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
 
Deep Generative Learning for All - The Gen AI Hype (Spring 2024)
Deep Generative Learning for All - The Gen AI Hype (Spring 2024)Deep Generative Learning for All - The Gen AI Hype (Spring 2024)
Deep Generative Learning for All - The Gen AI Hype (Spring 2024)
 
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
 

第6回 関数とフロー制御

  • 1. 6 2020 3 8 1 1 2 1 2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3 5 3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1.1 if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1.2 ifelse() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1.3 switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.2.1 for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.2.2 while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.4 apply . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1 • • 2 csv read.csv() data.frame() 1
  • 2. 2.1 6 2.1 function() Hello World! hello() 1 + + > hello <- function() { # + cat("Hello Worldn") + } > hello() # Hello World function() { } function() ( ) name > hello <- function(name) { + cat (" ", name, "n", sep="") + } > hello(" !") ! > add <- function (x, y) { + x + y + } > add(10, 5) [1] 15 add() x y add(10, 5) 10 5 2.2 > calc <- function (x, y) { + x * y + x - y + x + y # calc I 2
  • 3. 2.3 6 + } > calc (3, 4) [1] 7 return() > calc <- function (x, y) { + x * y + x - y + return(x + y) # + } > calc (1, 2) [1] 3 return() 2 > calc <- function (x, y) { + x * y + return(x - y) # x-y + x + y # + } > calc (1, 2) [1] -1 2.3 hello() name " " hello() name " " > hello <- function(name=" ") { # name + cat (" ", name, "n", sep="") + } > hello() # name > hello(" !") # name ! ! name birthday I 3
  • 4. 2.4 6 > greeting <- function(name, birthday, greet=" ", to=" ") { + str <- paste(to, " ", greet, " ", + " ", name, " ", + " ", birthday, " ", sep="") + str + } > greeting(" ", "4 1 ") # greet to [1] " 4 1 " str str R str str greeting() > greeting(" ", "4 1 ", " ") # to [1] " 4 1 " > greeting(" ", "4 1 ", " ", " ") [1] " 4 1 " greet 3 greet > greeting(" ", "4 1 ", " ") [1] " 4 1 " > greeting(" ", "4 1 ", to=" ") [1] " 4 1 " > greeting(greet=" ", name=" ", to=" ", birthday="4 1 ") [1] " 4 1 " 2.4 greeting() g g() greeting() I 4
  • 5. 6 > g <- greeting > g(name=" ", birthday="4 ") [1] " 4 " add() adder() x y add > add <- function(x, y, adder) { + adder(x, y) + } add add.num() add add.str() > add.num <- function(x, y) { + x + y # + } > add.str <- function(x, y) { + paste(x, y) # + } add() > add(1, 5, add.num) [1] 6 > add("a", "b", add.str) [1] "a b" > add("a", "b", function(x, y) {paste(x, y, sep="+")}) [1] "a+b" 3 I 5
  • 6. 3.1 6 3.1 3.1.1 if TRUE FALSE if if > absolute.value <- function(x) { + if (x > 0) { + x # x > 0 TRUE x + } else { + -x # x > 0 FALSE x + } + } > absolute.value(5) [1] 5 > absolute.value(-9) [1] 9 TRUE return(x) x FALSE else > absolute.value <- function(x) { + if (x > 0) { + return(x) # x > 0 TRUE x + } + -x # x > 0 FALSE x + } > absolute.value(-100) [1] 100 > absolute.value(4) [1] 4 if-else 90 A 80 B 60 C D grade() > grade <- function(score) { + if (score >= 90) { + "A" + } else if (score >= 80) { + "B" + } else if (score >= 60) { + "C" + } else { + "D" + } + } > grade(100) [1] "A" I 6
  • 7. 3.1 6 > grade(34) [1] "D" > grade(65) [1] "C" > grade(83) [1] "B" grade() else if { } else if 1 1 > grade <- function(score) { + if (score >= 90) { + "A" + } else { + if (score >= 80) { + "B" + } else { + if (score >= 60) { + "C" + } else { + "D" + } + } + } + } if grade() if else 1 > grade <- function(score) { + if (score >= 90) + "A" + else if (score >= 80) + "B" + else if (score >= 60) + "C" + else + "D" + } 3.1.2 ifelse() if-else ifelse() ifelse() ifelse() I 7
  • 8. 3.2 6 ifelse( , , ) > absolute.value <- function(x) { # ifelse + ifelse(x > 0, x, -x) + } > grade <- function(score) { # ifelse + ifelse(score >= 90, "A", + ifelse(score >= 80, "B", + ifelse(score >= 60, "C", "D"))) + } ifelse() 3.1.3 switch if-else 2 switch() switch( , 1, 2, 3, ...) 1 > switch(3, " 1", " 2", " 3", " 4") # 3 [1] " 3" > switch("b", a=" 1", b=" 2", c=" 3") # b [1] " 2" 3.2 R for while R 3.4 apply 3.2.1 for for for(i in ) i i { } I 8
  • 9. 3.2 6 > z <- 0 # z 0 > for(i in 1:10) { + z <- z + i # 1 10 + } > z # for z [1] 55 > for(n in c("a", "b", "c", "d")) # + cat(toupper(n), "n") # toupper() A B C D for 2 > for(i in 1:5) { + for(j in 1:5) + cat(i, "-", j, ", ", sep="") + cat("n") + } 1-1, 1-2, 1-3, 1-4, 1-5, 2-1, 2-2, 2-3, 2-4, 2-5, 3-1, 3-2, 3-3, 3-4, 3-5, 4-1, 4-2, 4-3, 4-4, 4-5, 5-1, 5-2, 5-3, 5-4, 5-5, 3.2.2 while while > countdown <- function(n) { # n 0 + while (n != 0) { + cat(n, ", ", sep="") + n <- ifelse (n >= 0, n-1, n+1) # n + } + cat("0n") + } > countdown(10) 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 > countdown(-5) -5, -4, -3, -2, -1, 0 I 9
  • 10. 3.3 6 3.3 (1) (7) 3 GDP ppp GDP compare.gdp() 2010 > compare.gdp(ppp, 2010) Qatar 117518.7 Japan 34986.99 Congo, Dem. Rep. 646.2954 (2) x y gcd(x, y) 3.4 apply for while R apply apply 1 1 2 4 ? 3 2 ? I 10