본문 바로가기

Study/class note

머신러닝 / 주사위 던지기(loop문 복습)

ㅁ 기계학습을 하기 전에 확인해야할 사항

1. 데이터 구조 확인 : 숫자,문자, 숫자+문자 어떤 구조로 이루어졌는지 확인

2. 이상치 확인

3. 결측치 확인

4. 수치형 데이터의 정규화 및 표준화

5. 수치형 데이터에 대해서 정규성을 띠는지 확인

6. 수치형 데이터에 대해서 상관관계를 보이는지 확인(회귀분석 시 사용)

7. 이원교차표( 기계가 잘 학습했는지 확인할 때 필요) 

 

문제222. 아래의 코드를 수정해서 부서번호가 20번인 사원들의 월급이 출력되게 하시오.

# R
sal_20 <- c()
for (i in 1:nrow(emp)){
  if(emp$deptno[i] == 20 ){
    sal_20 = c(sal_20, emp$sal[i])
                              }
                            }
print(sal_20)

문제223. 주사위를 한번 던져서 주사위의 눈을 출력하시오.

# R
sample(x = 1:6, size =1, replace = T)

1부터 6까지 있는 것중에 1개를 뽑겠다는 뜻

replace = T : 복원추출

 

문제224. 주사위를 10000번 던지시오.

# R
for (i in 1:10000){ a <- sample(x=1:6, size = 1, replace = T)
                    print(a)}

문제225. 주사위를 10000번 던져서 주사위의 눈이 3이 몇 번 나오는지 출력하시오.

# R
cnt <- 0
for (i in 1:10000){ a <- sample(x=1:6, size = 1, replace = T)
                    if(a == 3){cnt <- cnt +1}
                    }
print(cnt)

문제226. 주사위를 10000번 던져서 주사위의 눈이 3이 나올 확률을 출력하시오

cnt <- 0
for (i in 1:10000){ a <- sample(x=1:6, size = 1, replace = T)
                    if(a == 3){cnt <- cnt +1}
                    }
print(cnt/10000)

문제227. 주사위를 10000번 던져서 주사위의 눈이 짝수가 나올 확률을 출력하시오.

# R
cnt <- 0
for (i in 1:10000){ a <- sample(x=1:6, size = 1, replace = T)
                    if(a%%2 == 0){cnt <- cnt +1}
                    }
print(cnt/10000)

R 사칙연산자

나누기 /
몫 구하기 %/%
나머지 구하기 %%

문제228. 주사위 2개를 동시에 던져서 주사위 2개의 눈의 합이 10이 될 확률을 구하시오. (주사위 2개를 10000번 던지세요)

# R
cnt <- 0
for (i in 1:10000){
  a1 <- sample(x=1:6, size = 1, replace = T)
  a2 <- sample(x=1:6, size = 1, replace = T)
  if(a1+a2 == 10){
    cnt <- cnt +1 }
                    }
print(cnt/10000)

문제229. 아래와 같이 정상품 3개와 불량품 2개를 만들고 아래의 box 벡터에서 2개를 랜덤으로 추출하시오(복원추출)

# R
box <- c(rep('p',3),rep('n',2))
sample(box, size = 2, replace = T)

문제230. 아래의 box에서 제품을 하나 추출했을 때 그 제품이 불량품일 확률은 얼마인가요? ( 제품 추출 10000번 했을 때의 확률, 복원추출)

# R
cnt <- 0
box <- c(rep('p',3),rep('n',2))  # p:정상품, n:불량품
for (i in 1:10000){
  a <- sample(box, size = 1, replace = T)
  if( a == 'n'){ cnt <- cnt + 1 }
                   }
print(cnt/10000)

 

반응형