R 11

R 데이터 분석 과정

1. 데이터 전처리데이터 전처리는 분석의 정확도를 높이기 위한 첫 단계입니다.1.1. 결측값 처리 • 결측값(NA)은 분석에 방해가 될 수 있습니다. 이를 제거하거나 채워야 합니다. • 제거: na.omit(data) • 평균 대체: data$col[is.na(data$col)] 1.2. 이상치 처리 • 데이터의 이상치를 제거하거나 수정합니다. • IQR 방법:Q1 Q3 IQR data = (Q1 - 1.5 * IQR) & data$col 1.3. 데이터 형 변환 • 날짜 형식 변환:data$date • 범주형 변환:data$group 2. 종속변수와 독립변수 설정분석의 목표를 설정합니다: • 종속변수(Y): 예측하려는 변수 • 독립변수(X): 종속변수에 영향을 미치는 변수들3. 분석 모델 생성 전, ..

R 2024.12.09

R데이터분석을 할 때 여러가지 경우의 수

1. 데이터 전처리 과정 2. 종속변수 하나와 독립변수 여러 개를 설정 3. 모델을 만들기 전, 모델의 정확도를 높이기 위해 각각의 독립변수의 정규성과 종속변수에 미치는 영향성 확인 3.1. 종속변수 = 연속형 , 독립변수 = 연속형 인 경우3.1.1 각 변수가 정규성을 따르는지 확인 (shapiro.test)3.1.2. 정규성 여부에 따라 cor.test진행 ( 정규성을 따른다면 pearson, 정규성을 따르지 않는다면 spearman, 작은 데이터나 비선형적 관계라면 kendall 옵션적용 ) -예시 코드cor.test(data$mpg, data$wt)# Spearman 상관계수 및 검정cor.test(mtcars$mpg, mtcars$wt, method = "spearman")  p-value-13..

R 2024.12.08

r내장데이터 mtcars를 이용한 데이터분

#데이터 불러오기 및 확인 #table 을 한 이유는 변속기의 분포를 확인하기 위해서  #모델 생성에서 경고메세지 발생 -> 다중공선성을 확인해보았더니 값이 매우 크게 나옴 #따라서 다중공선성이 큰 독립변수를 제거하고 새로운 모델 생 #새로운 모델 확인 결곽 cyl이 유의미한 영향을 미치지 않는다는 결과 얻음. 따라서 cyl제거하고 새로운 모델 생성#새로운 모델 확인 결과 AIC값은 조금 높아졌음.  #lrtest를 통해 두 모델을 비교해본 결과 model1이 더 설명력이 높다는 결론을 얻음. #따라서 cyl이 유의미한 영향을 미친다고 할 수는 없지만 모델의 설명력이 더 높으므로 model 1을 최종모델로 선택한다.

R 2024.12.07

"기온(Temperature), 바람(Wind), 태양광(Solar.R) 및 주중/주말 여부가 오존 농도(Ozone)에 미치는 영향 분석

#데이터 전처리  #데이터 전처리 이후 종속변수의 정규성 판단#종속변수가 정규성을 따르지 않는다는 것을 확인했다. #데이터가 비정규성이므로 이를 분석하기 위해 rlm을 사용한다. #그러기 위해 rlm을 하는데 사용되는 MASS라이브러리를 불러온다. #rlm 진행#t 값을 확인하면 주말/주중 데이터는 유의미한 영향력이 없다는 것을 알 수 있다.#따라서 주중/주말 데이터 제거하고 새로운 모델 생성 새로운 모델에서는 모든 독립변수가 종속변수에 유의미한 영향을 준다는 것을 볼 수 있고,다중공선성 검증 결과 값이 1내외로 아주 작은 값이므로 다중공선성에도 문제가 없다. 따라서 이 모델을 최종 모델로 선별한다. 함의 기온(Temp):기온이 1도 상승할 때 오존 농도는 약 1.32 ppb 증가.t-value = 7...

R 2024.12.07

전력 데이터에 영향을 미치는 요인 분석

https://data.kma.go.kr/data/grnd/selectAsosRltmList.do?pgmNo=36&openPopup=Y 자바스크립트가 비활성 되었습니다. 해당 기능은 자바스크립트에서 활성상태에서 사용가능합니다. 종관기상관측이란 종관" data-og-host="data.kma.go.kr" data-og-source-url="https://data.kma.go.kr/data/grnd/selectAsosRltmList.do?pgmNo=36&openPopup=Y" data-og-url="https://data.kma.go.kr/data/grnd/selectAsosRltmList.do?openPopup=Y&pgmNo=36" data-og-image=""> 기상자료개방포털[데이터:기상관측:지상:종..

R 2024.12.07

운동하는 사람들 중에서 체중의 평균이 그룹간 차이가 있나(anova)

문제: 귀무가설: 나이를 **세 그룹(30세 미만, 30~50세, 50세 이상)**으로 나누었을 때, 운동하는 사람들 중에서 체중의 평균이 그룹 간에 유의미한 차이가 없다대립가설: 나이를 세 그룹으로 나누었을 때, 운동하는 사람들 중에서 체중의 평균이 그룹 간에 유의미한 차이가 있다. 가설 설정: H0 (귀무가설): 나이별 그룹 간 체중 평균에 유의미한 차이가 없다H1 (대립가설): 나이별 그룹 간 체중 평균에 유의미한 차이가 있다근력운동 BE5_1   -> 1,8 비운동 2,3,4,5,6 운동나이 age몸무게 HE_wt     > s > s > s > s$age_group > s$undong > u    > bartlett.test(HE_wt~age_group, data=u)         Bartle..

R 2024.10.20

sas파일가설검즘

h0 평균시간이같다 h1 평균시간이다르다 (일한는사람과 안하는사람의 수면시간) EC1_1 (경제) BP16_1 (수면시간) age sex > d = read_sas("hn22_all.sas7bdat") > df = d[,c("EC1_1","BP16_1","sex","age")] > df2 = df[df$sleep> df3 = na.omit(df2) > qqnorm(df3$sleep) > var.test(sleep~job, data=df3)  //분산분석 (두 그룹의 수면시간은 다르다는 결과)         F test to compare two variances data:  sleep by job F = 0.7063, num df = 2999, denom df = 2023, p-value alternat..

R 2024.10.20

t-test, anova-test

## 가설 검증  1. 당뇨인 군과 아닌 군의 평균체중은 차이가 있다. 2. 당뇨환자의 연령그룹이 40세 미만, 40~60, 60세 이상인 그룹 별 평균 체중은 차이가 있다. ## ex1.txt  # 대상자 번호  pid # 당뇨측정시점  redcap_event_name  # 당화혈색소  HbA1c # HbA1c(당화혈색소) ≥ 6.5% : 당뇨 정의 ## ex2.txt  # 체중_대상자 번호 BW_myhealth_id # 체중_측정 일시 BW_date_measured # 체중_측정값 BW_value ## ex3.txt  # 대상자 번호 pid # 대상자 나이 age  # 대상자 성별 sex  1. 데이터 불러오기 및 전처리# 데이터 불러오기 (txt 파일을 데이터프레임으로)h_data =30 & bw_..

R 2024.10.19

검증의 종류

1. t-test (두 그룹 간 평균 비교) 목적: 두 그룹 간 평균 차이가 유의미한지 확인합니다. 예를 들어, 당뇨 환자와 비당뇨 환자의 평균 체중 비교가 가능합니다. 데이터 형식: • txt, csv, sas7bdat, sav 등의 파일에서 데이터를 불러옵니다. • 파일에는 그룹 변수(예: 당뇨 여부)와 측정 변수(예: 체중) 같은 컬럼이 포함되어 있어야 합니다. 검증 과정1.데이터 로드두 그룹을 비교할 수 있는 데이터 파일을 불러옵니다.예: txt 파일에 당뇨 여부와 체중 데이터가 포함.2.등분산성 가정 확인t-test를 수행하기 전에,그룹 간 분산이 동일한지를 확인하기 위해 Bartlett’s Test 또는 Levene’s Test를 수행합니다.등분산성 검증 결과p-value  검증 결과•p-va..

R 2024.10.19