lab01
#조건문 확인
jobtype <- "B"
jobtype
# if문은 ()값이 참일때 블럭 실행함.
# else구문, else if구문은 반드시 if 구문의 }의 같은 라인에 적어줘야함.
if(jobtype == 'A'){
bonus <- 200
}else {
bonus <- 100
}
print(bonus)
rm(jobtype)
rm(bonus)
# 점수를 가지고 학점을 주기
score <- 60;
# if-else if-else 구문
# else구문 옆에는 조건식이 오면 안된다는 것 기억.
if(score > 90){
grade <- 'A'
}else if(score > 80){
grade <- 'B'
}else if(score > 70){
grade <- 'C'
}else if(score > 60){
grade <- 'D'
}else{
grade <- 'F'
}
print(grade)
# 조건문에 논리연산자(&,|) 사용해보기.
a = 10
b = 20
# & 둘다 참이면 참을 리턴함.
if(a>5 & b>5){
print(a+b)
}
# | 하나라도 참이면 참을 리턴함.
if(a>5 | b>30){
print(a*b)
}
if(a>b){
c <- a
}else{
c <- b
}
print(c)
#첫번째 매개변수(수식)가 참이면 a를 리턴, 거짓이면 b를 리턴
c <- ifelse(a>b,a,b)
c
lab02
# 반복문에 대해 알아보자.
# for문
# for(변수 in 범위)
for (i in 1:5) {
print("*")
}
for(i in 1:10){
print(i)
}
# cat() : 문장을 만들어서 출력하고자 할때 사용하는 함수.
#\n은 개행하라(이스케이프문자)
for (i in 1:9) {
cat(" 2 *",1 , "=", 2*i, "\n")
}
c <- 20
cat("c의 값은",c,"\n")
for (i in 1:20) {
if((i %% 2) == 0){
cat("1~20까지의 짝수 : ",i,"\n")
}
}
for (i in 1:20) {
if((i %% 2) != 0){
cat("1~20까지의 홀수 : ",i,"\n")
}
}
#값 누적하기
sum <- 0
for (i in 1:1000) {
sum <- sum + i
}
cat("1에서 100 누적값 :",sum)
iris
head(iris,6)
#num은 150이 저장
num <- nrow(iris)
mylabel <- c()
mylabel
for (i in 1:num) {
# 꽃잎의 길이에 따라 레이블 결정
if(iris$Petal.Length[i] <= 1.6){
mylabel[i] <- 'L'
}else if(iris$Petal.Length[i] <= 5.1){
mylabel[i] <- 'H'
}else{
mylabel[i] <- "M"
}
}
mylabel
#새로운 데이터프레임을 만들자
df_new_iris <-data.frame(iris$Petal.Length,mylabel)
df_new_iris
class(df_new_iris)
head(df_new_iris)
# while문 (통상 무한루프를 실행할때 많이 사용함)
sum <- 0;
i <- 1;
while(i<=100){
sum <- sum + i #값 누적하기기
i <- i + 1 #이라인이 주석처리되면 무한루프에 빠진다.
}
print(sum)
# next문은 자신의 뒷문장은 실행하지 않고 반복문의 블럭끝으로 바로 이동함
# 1~10 사이의 홀수만 더한 결과
sum <- 0
for (i in 1:10) {
if(i%%2 == 0){
next
}
sum <- sum + i
}
print(sum)
# 1~10 사이의 짝수만 더한 결과
sum <- 0
for (i in 1:10) {
if(i%%2 != 0){
next
}
sum <- sum + i
}
print(sum)