# 성적표
# 상위 20% 커트라인
student = c('길동', '유신', '심청', '감찬', '성계')
# 길동
subject = c('kor', 'eng', 'math', 'sci', 'soc')
score = c(75,80,92,77,90)
subject_mean = c(68.4, 75.1, 63.5, 76.2, 80.3)
subject_sd = c(4.9, 11.2, 9.8, 5.2, 8.5)

# 확률면적
x <- qnorm(
  (1 - 0.2), # 상위 20% 지점 점수
  mean = 68.4, # 구하고자 하는 과목의 평균값
  sd = 4.9 # 해당 과목의 표준편차
)
x # [1] 72.52394

var.score <- data.frame(
  subject = c('kor', 'eng', 'math', 'sci', 'soc'),
  score = c(75,80,92,77,90),
  subject_mean = c(68.4, 75.1, 63.5, 76.2, 80.3),
  subject_sd = c(4.9, 11.2, 9.8, 5.2, 8.5),
  stringsAsFactors = F
) # 과목명이 factor 로 변하는 것을 막음. 


View(var.score)
# 20% 이내 점수를 구해서 컬럼 추가
var.score[, '상위20%'] <-  round(qnorm(
  (1 - 0.2), # 상위 20% 지점 점수
  mean = var.score$subject_mean, # 구하고자 하는 과목의 평균값
  sd = var.score$subject_sd # 해당 과목의 표준편차
),2)
View(var.score)

# 상위 20% 패스여부 판단
var.score[,'패스'] = "실패"
var.score[var.score$점수 > var.score$`상위20%`,
          '패스'] = "성공"
View(var.score)
var.score <- subset(var.score, select = -c(stringsAsFactors))
View(var.score)


# 유신의 성적표
yusin <- round(runif(5, 40, 100),0)
yusin
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQoNCg0KYGBge3J9DQojIOyEseygge2RnA0KIyDsg4HsnIQgMjAlIOy7pO2KuOudvOyduA0Kc3R1ZGVudCA9IGMoJ+q4uOuPmScsICfsnKDsi6AnLCAn7Ius7LKtJywgJ+qwkOywrCcsICfshLHqs4QnKQ0KIyDquLjrj5kNCnN1YmplY3QgPSBjKCdrb3InLCAnZW5nJywgJ21hdGgnLCAnc2NpJywgJ3NvYycpDQpzY29yZSA9IGMoNzUsODAsOTIsNzcsOTApDQpzdWJqZWN0X21lYW4gPSBjKDY4LjQsIDc1LjEsIDYzLjUsIDc2LjIsIDgwLjMpDQpzdWJqZWN0X3NkID0gYyg0LjksIDExLjIsIDkuOCwgNS4yLCA4LjUpDQoNCiMg7ZmV66Wg66m07KCBDQp4IDwtIHFub3JtKA0KICAoMSAtIDAuMiksICMg7IOB7JyEIDIwJSDsp4DsoJAg7KCQ7IiYDQogIG1lYW4gPSA2OC40LCAjIOq1rO2VmOqzoOyekCDtlZjripQg6rO866qp7J2YIO2Pieq3oOqwkg0KICBzZCA9IDQuOSAjIO2VtOuLuSDqs7zrqqnsnZgg7ZGc7KSA7Y647LCoDQopDQp4ICMgWzFdIDcyLjUyMzk0DQoNCnZhci5zY29yZSA8LSBkYXRhLmZyYW1lKA0KICBzdWJqZWN0ID0gYygna29yJywgJ2VuZycsICdtYXRoJywgJ3NjaScsICdzb2MnKSwNCiAgc2NvcmUgPSBjKDc1LDgwLDkyLDc3LDkwKSwNCiAgc3ViamVjdF9tZWFuID0gYyg2OC40LCA3NS4xLCA2My41LCA3Ni4yLCA4MC4zKSwNCiAgc3ViamVjdF9zZCA9IGMoNC45LCAxMS4yLCA5LjgsIDUuMiwgOC41KSwNCiAgc3RyaW5nc0FzRmFjdG9ycyA9IEYNCikgIyDqs7zrqqnrqoXsnbQgZmFjdG9yIOuhnCDrs4DtlZjripQg6rKD7J2EIOunieydjC4gDQoNCg0KVmlldyh2YXIuc2NvcmUpDQojIDIwJSDsnbTrgrQg7KCQ7IiY66W8IOq1rO2VtOyEnCDsu6zrn7wg7LaU6rCADQp2YXIuc2NvcmVbLCAn7IOB7JyEMjAlJ10gPC0gIHJvdW5kKHFub3JtKA0KICAoMSAtIDAuMiksICMg7IOB7JyEIDIwJSDsp4DsoJAg7KCQ7IiYDQogIG1lYW4gPSB2YXIuc2NvcmUkc3ViamVjdF9tZWFuLCAjIOq1rO2VmOqzoOyekCDtlZjripQg6rO866qp7J2YIO2Pieq3oOqwkg0KICBzZCA9IHZhci5zY29yZSRzdWJqZWN0X3NkICMg7ZW064u5IOqzvOuqqeydmCDtkZzspIDtjrjssKgNCiksMikNClZpZXcodmFyLnNjb3JlKQ0KDQojIOyDgeychCAyMCUg7Yyo7Iqk7Jes67aAIO2MkOuLqA0KdmFyLnNjb3JlWywn7Yyo7IqkJ10gPSAi7Iuk7YyoIg0KdmFyLnNjb3JlW3Zhci5zY29yZSTsoJDsiJggPiB2YXIuc2NvcmUkYOyDgeychDIwJWAsDQogICAgICAgICAgJ+2MqOyKpCddID0gIuyEseqztSINClZpZXcodmFyLnNjb3JlKQ0KdmFyLnNjb3JlIDwtIHN1YnNldCh2YXIuc2NvcmUsIHNlbGVjdCA9IC1jKHN0cmluZ3NBc0ZhY3RvcnMpKQ0KVmlldyh2YXIuc2NvcmUpDQoNCg0KIyDsnKDsi6DsnZgg7ISx7KCB7ZGcDQp5dXNpbiA8LSByb3VuZChydW5pZig1LCA0MCwgMTAwKSwwKQ0KeXVzaW4NCg0KDQoNCmBgYA0K