성적표
상위 20% 커트라인
student = c('길동', '유신', '심청', '감찬', '성계')
길동
subject = c('kor', 'eng', 'math', 'sci', 'sco')
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)
# 확률면적 상위 20%지점 점수
x <- qnorm(
(1 - 0.2), # 상위 20%지점 점수
mean = 68.4, # 구하고자 하는 과목의 평균값
sd = 4.9 # 해당과목의 표준편차
)
x
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로 변하는 것을 막음
)
20% 이내 여부 체크
[행, 열 (지정 안하면 모든행, 열)]
var.score[,'상위20'] <- round(qnorm(
(1 - 0.2),
mean = var.score$과목별평균,
sd = var.score$표준편차
),2)
상위 20% 패스여부 판단
var.score[var.score$점수 < var.score$상위20,
'패스'] = "실패"
var.score[var.score$점수 >= var.score$상위20,
'패스'] = "성공"
View(var.score)
var.score <- subset(var.score, select = -c(stringsAsFactors))
View(var.score)
유신의 성적표 / 점수 랜덤으로 설정 runif()
yusin <- round(runif(5, 40, 100),0)
yusin
LS0tDQp0aXRsZTogIuyEseygge2RnCDrp4zrk6TquLAiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KIyMjIyDshLHsoIHtkZwNCiMjIyMg7IOB7JyEIDIwJSDsu6TtirjrnbzsnbgNCg0KYGBge3J9DQpzdHVkZW50ID0gYygn6ri464+ZJywgJ+ycoOyLoCcsICfsi6zssq0nLCAn6rCQ7LCsJywgJ+yEseqzhCcpDQpgYGANCg0KIyMjIyDquLjrj5kNCmBgYHtyfQ0Kc3ViamVjdCA9IGMoJ2tvcicsICdlbmcnLCAnbWF0aCcsICdzY2knLCAnc2NvJykNCnNjb3JlID0gYyg3NSw4MCw5Miw3Nyw5MCkNCnN1YmplY3RfbWVhbiA9IGMoNjguNCw3NS4xLDYzLjUsNzYuMiw4MC4zKQ0Kc3ViamVjdF9zZCA9IGMoNC45LDExLjIsOS44LDUuMiw4LjUpDQojIO2ZleuloOuptOyggSDsg4HsnIQgMjAl7KeA7KCQIOygkOyImA0KeCA8LSBxbm9ybSgNCiAgKDEgLSAwLjIpLCAjIOyDgeychCAyMCXsp4DsoJAg7KCQ7IiYDQogIG1lYW4gPSA2OC40LCAjIOq1rO2VmOqzoOyekCDtlZjripQg6rO866qp7J2YIO2Pieq3oOqwkg0KICBzZCA9IDQuOSAjIO2VtOuLueqzvOuqqeydmCDtkZzspIDtjrjssKgNCikNCngNCg0KdmFyLnNjb3JlIDwtIGRhdGEuZnJhbWUoDQogIOqzvOuqqSA9IHN1YmplY3QgPC0gYygna29yJywgJ2VuZycsICdtYXRoJywgJ3NjaScsICdzb2MnKSwNCiAg7KCQ7IiYID0gc2NvcmUgPC0gYyg3NSw4MCw5Miw3Nyw5MCksDQogIOqzvOuqqeuzhO2Pieq3oCA9IHN1YmplY3RfbWVhbiA8LSBjKDY4LjQsNzUuMSw2My41LDc2LjIsODAuMyksDQogIO2RnOykgO2OuOywqCA9IHN1YmplY3Rfc2QgPC0gYyg0LjksMTEuMiw5LjgsNS4yLDguNSksDQogIHN0cmluZ3NBc0ZhY3RvcnMgPSBGICMg6rO866qp66qF7J20IGZhY3RvcuuhnCDrs4DtlZjripQg6rKD7J2EIOunieydjA0KKQ0KDQpgYGANCiMjIyMgMjAlIOydtOuCtCDsl6zrtoAg7LK07YGsDQojIyMjIFvtloksIOyXtCAo7KeA7KCVIOyViO2VmOuptCDrqqjrk6DtloksIOyXtCldDQpgYGB7cn0NCnZhci5zY29yZVssJ+yDgeychDIwJ10gIDwtIHJvdW5kKHFub3JtKA0KICAoMSAtIDAuMiksIA0KICBtZWFuID0gdmFyLnNjb3JlJOqzvOuqqeuzhO2Pieq3oCwgDQogIHNkID0gdmFyLnNjb3JlJO2RnOykgO2OuOywqA0KKSwyKQ0KYGBgDQojIyMjIOyDgeychCAyMCUg7Yyo7Iqk7Jes67aAIO2MkOuLqA0KYGBge3J9DQp2YXIuc2NvcmVbdmFyLnNjb3JlJOygkOyImCA8IHZhci5zY29yZSTsg4HsnIQyMCwNCiAgICAgICAgICAn7Yyo7IqkJ10gPSAi7Iuk7YyoIg0KdmFyLnNjb3JlW3Zhci5zY29yZSTsoJDsiJggPj0gdmFyLnNjb3JlJOyDgeychDIwLCANCiAgICAgICAgICAn7Yyo7IqkJ10gPSAi7ISx6rO1Ig0KVmlldyh2YXIuc2NvcmUpDQoNCnZhci5zY29yZSA8LSBzdWJzZXQodmFyLnNjb3JlLCBzZWxlY3QgPSAtYyhzdHJpbmdzQXNGYWN0b3JzKSkNClZpZXcodmFyLnNjb3JlKQ0KYGBgDQoNCiMjIyMg7Jyg7Iug7J2YIOyEseygge2RnCAvIOygkOyImCDrnpzrjaTsnLzroZwg7ISk7KCVIHJ1bmlmKCkNCmBgYHtyfQ0KeXVzaW4gPC0gcm91bmQocnVuaWYoNSwgNDAsIDEwMCksMCkNCnl1c2luDQoNCmBgYA0KDQo=