본문 바로가기
728x90
728x90

data분석12

R ) group_by에 사용자 정의 함수 사용하기 in R data를 다루다보면 data frame에서 그룹별로 summarise를하거나 계산을 해야하는 경우가 있습니다 이때 사용자 정의함수를 이용해 계산을 해줄수도 있습니다. 간단하게 iris data를 이용해 한번 보겠습니다. func % group_by(Species) %>% summarise(value=func(Sepal.Length,Petal.Length)) 이런식으로 사용자정의 함수를 이용해 그룹별로 계산을 해줄 수 있습니다 2023. 11. 13.
R ) 특정 조건 만족하는 새로운 column만들기 in r 위 data에서 COL1, COL2 그룹 별 COL3에 있는 AVG의 COL4 값이 OUT이라면 모두 OUT을 넣고 아무것도 없다면 모두 아무것도 넣지 않는것에 대해 해보려고 합니다. 아래 처럼 바꾸는 것이죠 2가지 방법으로 할 수 있는데 이를 해보겠습니다 df %>% group_by(col1,col2) %>% mutate(col5=col4[col3=="AVG"]) %>% as.data.table() df1[,c("col5"):=col4[col3=="AVG"],by=c("col1","col2")] 위 처럼 구현할 수 있습니다 같이 읽으면 좋은 글 https://c-mond.tistory.com/123 R ) column 추가하기 data.table, data.frame in r data table과 da.. 2022. 12. 26.
R ) as.formula 활용하기 formula 인자 변경하면서 반복문 사용 함수를 사용하다보면 formula인자에 값을 넣어 사용할때가 있습니다. 이때 formula인자에 들어가는 값을 바꿔가면서 반복문을 돌리는 등의 코드를 진행하고 싶을때가 있습니다. formula인자에는 문자열등이 들어가는 것이 아니라 다른게 들어가나 봅니다..그래서 그냥 문자열을 넣으면 안되고 as.formula함수를 이용해 문자열을 formula인자에 들어가도록 바꿀 수 있는 것 같습니다. 그래서 as.formula를 이용해 formula인자의 값을 바꿔가면서 적용시키는 예제를 해보려고 합니다. dataframe은 iris를 사용하겠습니다. 함수는 doBy 패키지의 orderBy함수를 사용해보려 합니다. oderBy(formula=~정렬할 기준 column, data=dataframe)인자를 갖고 있는 .. 2022. 11. 30.
R ) 병렬처리, 병렬함수 mclapply 알아보기 in r R에서 병렬처리 함수인 mclapply에 관해 알아보려고 합니다. mclapply는 코드를 처리할때 병렬로 처리하여 코드 처리시간을 단축 시킬 수 있는 코드입니다. 해당함수는 윈도우에서는 사용하지 못하는것으로 알고있고 mac이나 linux에서 사용할 수 있는 것으로 알고 있습니다. parallel 패키지에 있는 함수 입니다. mclapply(X=설정값,mc.cores=설정값,FUN=설정값) 의 인자를 갖고 있습니다. mc.cores에는 detectCores() 함수로 사용가능한 core수를 확인하고 적당한 값을 넣어주면 됩니다. 모든 core를 입력하면 다른 작업을 못 할 수도 있으므로 1~2개 작은 core를 사용하는것이 좋은것 같습니다. for문과 비교하여 얼마나 빠른지 확인해 보도록 하겠습니다. 먼.. 2022. 11. 15.
728x90
728x90