반복문

setwd('c:/users/is2js/R_da/')

#### for() 반복문 ####
for( number in 1:3){
   print(number) # for()문 속에는 진행상황을 알기 위해 print()함수를 자주 쓴다.
   Sys.sleep(2) # 각 반복문마다 2초 sleep시키는 방법
}

for( number in c(1, 3, 5)){
   print(number)
   Sys.sleep(0.2)
}

for( number in letters[1:5]){
   print(number)
   Sys.sleep(0.2)
}

for( number in 1:5){
   print(number^2)   # R에서 제곱은 ^2로 나타낼 수 있다.
   Sys.sleep(0.2)
}

# 특정한 df에서 특정칼럼을 생성할 때, (다른 칼럼의 값 이용해서..) for문 사용
df = data.frame(aa = letters[1:4],
                 bb = 1:4 )
df
for( num in 1:4){
   df[num, "new"] = num^2
}
# 보통은 dataframe의 각 행을 for문을 이용하여 돌때는 1:nrow(df)를 사용한다.
for( num in 1:nrow(df)){
   df[num, "new"] = num^2
}
df


조건문


#### 조건문 if()함수 ####
n = 4
if (n != 4){
   print("n은 4가 아니다.")
}else{
   print( "n은 4다" )
}

#  df에서 if와 for를 같이 사용
df
for ( n in 1:nrow(df) ){ # df의 row를 n으로 받기
   if( n>=3 ){ # 3행이상부터는 bb컬럼을 출력
     print(df[n, "bb"])
   }else{
     print("아직 3행까지 못갔어요!")
   }
}


#### 조건 연산자 ####
# my)행 인덱싱을 $을 이용해서 하위구조인 칼럼에 조건을 담
df
df[df$bb >= 3, ]
df[df$aa == "b", ]
df[df$aa != "b", ]
# 2개 이상의 조건에서는 항상 괄호 () & () 를 입력해주는 습관을 가지자.
df[ (df$bb>1) & (df$bb<4) ,] # OR 는 |   / and는 &



산출물 저장 및 기타


#### 기타 연산자#####
# 할당 연산자
# <<- 화살표 머리가 2개 인 할당자 : 함수내에서 활용 / try catch문에서나 활용...
# 산술 연산자
# %/% : 몫
# %% : 나머지
# 제곱 : ^(hat) or  **

setwd('c:/users/is2js/R_da/')
aws = read.delim("data/AWS_sample.txt",
                  sep = "#",
                  stringsAsFactors = FALSE)
head(aws)


#### 기본 그래프 ####
# 실제로는 ggplot2를 쓰기때문에,, 나중엔 안쓴다.
plot(aws$TA) # 칼럼을 $으로 인덱싱해서 그린다.
plot(1:10, 1:10) # 일반 숫자는 x축, y축을 넣어준다.
plot(x = 1:10, y = 1:10)
plot(x = 1:10, y = 1:10, col="red") # 색상
plot(x = 1:10, y = 1:10, col="red", type = "b") # 선 스타일

#### 데이터 저장 ####
# 원하는 wd를 먼저 설정해주자.
# row.names = FALSE옵션을 주지 않으면, 행번호 칼럼이 저장되어 버린다.
# 필요없는 컬럼이 저장할때마다 생겨버림

# 1. 작업폴더 설정
setwd('c:/users/is2js/R_da/')
# 2. 데이터 읽어오기
aws = read.delim("data/AWS_sample.txt",
                  sep = "#",
                  stringsAsFactors = F)
# 3. csv로 저장하기
write.csv(aws, "aws_test.csv", row.names = F )
# 4. 저장한 csv 읽어보기
read.csv("aws_test.csv", stringsAsFactors = F)


#### 스크립트 저장하기 ####
# ctrl + s ->choose encoding에서 UTF-8 -> 전체 적용
# 이미 설정한 사람은 Tools > global options > code > saving > UTF-8 > 전체 적용
# cp949, 1ckr은 윈도우만 사용하는 인코딩이므로 사용 ㄴㄴ


#### plot save ####
# Export -> selection

+ Recent posts