채니의 개발일기

R - apply 함수, lapply함수 본문

프로그래밍언어/R기초

R - apply 함수, lapply함수

윤채니챈 2023. 6. 21. 13:29
728x90
반응형

apply함수

- apply() 함수는 반복문을 사용하지 않고 간단하게 데이터 구조의 행 또는 열에 함수를 적용할 수 있게 해준다.

 

apply(X, MARGIN, FUN, ...)
  • X: 함수를 적용할 데이터 구조 (벡터, 행렬, 데이터 프레임 등)
  • MARGIN: 함수를 적용할 방향을 나타내는 인수. 1은 행, 2는 열을 의미, 추가적으로 MARGIN을 통해 다른 차원에 적용가능
  • FUN: 적용할 함수. 사용자 정의 함수 또는 내장 함수 모두 사용가능
  • ...: 추가적인 인수를 전달할 때 사용하는 선택적인 인수

 

예시 데이터

data <- matrix(1:9, nrow = 3, ncol = 3)
data
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9

 

 

apply(x,1,fun)일때

apply(data,1,sum)

결과: 세로로 sum함수 적용된 값

[1] 12 15 18

 

apply(x,2,fun)일때

apply(data,2,sum)

결과 : 가로로 sum함수 적용된값

[1]  6 15 24

 

lapply()함수

 

- lapply는 R 프로그래밍 언어에서 사용되는 함수, 리스트 또는 벡터의 각 요소에 대해 지정된 함수를 적용하는 데 사용

- "l"은 "리스트"를 나타내고, "apply"는 함수를 적용한다는 의미

 

- 주어진 리스트 또는 벡터의 각 요소에 대해 FUN으로 지정된 함수를 적용하고, 그 결과를 리스트로 반환

 

vec <- c(1, 2, 3, 4, 5)
result <- lapply(vec, function(x) x^2)
print(result)

결과 

[[1]]
[1] 1

[[2]]
[1] 4

[[3]]
[1] 9

[[4]]
[1] 16

[[5]]
[1] 25
728x90
반응형

'프로그래밍언어 > R기초' 카테고리의 다른 글

R - substring함수  (0) 2023.06.21
R - 조건문 (if else)  (0) 2023.06.21
R - 행렬,데이터프레임 생성  (0) 2023.06.20
R - 데이터프레임인덱스  (0) 2023.06.19
R - 사용자 함수 정의 : function()  (0) 2023.06.19