Recent Posts
Tags
- Ai
- 코딩테스트 python
- 기초다지기
- 난생처음 R코딩&데이터 분석 저서
- SQL
- python
- boostcourse
- 정보처리기사
- 인공지능기초다지기
- 네이버부스트캠프
- AI 플랫폼을 활용한 데이터 분석
- PY4E
- 빅데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- Machine Learning
- 부스트코스
- 데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- 프로그래머스
- 빅분기
- [멀티잇]데이터 시각화&분석 취업캠프(Python)
- r
- 파이썬
- 이기적
- DB
- 이것이 취업을 위한 코딩테스트다 with 파이썬
- 오라클
- boostcoures
- 코딩테스트
- 빅데이터분석기사
- Oracle
- 데이터베이스
- Today
- Total
매일공부
[R기초] apply 함수 본문
apply( DATA, 1(row) | 2(col), 적용함수 )
: Returns a vector or array or list of values obtained by applying a function to margins of an array or matrix.
- iris 데이터
#iris 데이터에서 꽃받침, 꽃잎의 가로, 세로의 평균 출력하기
colMeans(iris[1:4])
# Sepal.Length Sepal.Width Petal.Length Petal.Width
# 5.843333 3.057333 3.758000 1.199333
rowMeans(iris[,1:4])
# [1] 2.550 2.375 2.350 2.350
# iris[,1:4] : 모든 행, 1~4번째 컬럼까지의 데이터
apply(iris[,1:4], 2, mean) #열별 평균
# Sepal.Length Sepal.Width Petal.Length Petal.Width
# 5.843333 3.057333 3.758000 1.199333
apply(iris[,1:4], 1, mean) #행별 평균
# [1] 2.550 2.375 2.350 2.350
Q.s1, s2 과목은 20점 만점, s3 과목은 60점 만점.
각각 과목이 40% 이상 득점이 되고, 총합이 60점 이상인 경우 합격, socreset 데이터에 합격, 불합격 여부 설정
# 응시자 10명의 점수
s1 <- c(14,16,12,20,8,6,12,18,16,10)
s2 <- c(18,14,14,16,10,12,10,20,14,14)
s3 <- c(44,38,30,48,42,50,36,52,54,32)
score <- data.frame(s1, s2, s3)
더보기
#응시자별 과목 총첨 출력
total <- rowSums(score)
total <- apply(score, 1, sum) #76 68 56 84 60 68 58 90 84 56
# total 데이터를 열로 추가하여 scoreset 데이터에 저장
scoreset <- cbind(score, total)
# s1 s2 s3 total
# 1 14 18 44 76
# 2 16 14 38 68
# 3 12 14 30 56
# 4 20 16 48 84
# 5 8 10 42 60
# 6 6 12 50 68
# 7 12 10 36 58
# 8 18 20 52 90
# 9 16 14 54 84
# 10 10 14 32 56
# result 데이터 생성 및 추가
result <- c()
for(i in 1:nrow(scoreset)){
if(scoreset[i,1] < 20*0.4 | scoreset[i,2] < 20*0.4 | scoreset[i,3] < 20*0.6){
result[i] <- "불합격"
} else if (scoreset[i, 4] >= 60){
result[i] <- "합격"
} else{
result[i] <- "불합격"
}
}
socreset <- cbind(scoreset, result)
socreset
# s1 s2 s3 total result
# 1 14 18 44 76 합격
# 2 16 14 38 68 합격
# 3 12 14 30 56 불합격
# 4 20 16 48 84 합격
# 5 8 10 42 60 합격
# 6 6 12 50 68 불합격
# 7 12 10 36 58 불합격
# 8 18 20 52 90 합격
# 9 16 14 54 84 합격
# 10 10 14 32 56 불합격
* 내용참고&출처 : 태그의 수업을 복습 목적으로 정리한 내용입니다.
'Programming > R' 카테고리의 다른 글
[R 시각화] 그래프로 시각화해보기 (0) | 2023.08.01 |
---|---|
[R기초] which 함수 (0) | 2023.08.01 |
[R기초] 패키지 사용; dlgInput(), is.na(), as.numeric() (0) | 2023.08.01 |
[R기초] 내장 데이터로 데이터 분석해보기 (0) | 2023.07.28 |
[R기초] 정규표현식 & 문자열 (0) | 2023.07.28 |
Comments