인류의 복지와 편익을 위한 인프라 건설을 주도하는토목공학과
제목
2학년 토목빅데이터아이닝(Discriminant Analysis 실습 R코딩_MBTI, ROAD TYPE 판별등)(박영훈 교수)
작성일
2026.10.01
작성자
부천대학교 토목공학과
install.packages("MASS") library(MASS) library(MASS) # MBTI DISCRIMINANT ANALYSIS # 데이터 불러오기 mba = read.csv("mbti_300.csv") head(mba) # 필요한 열만 선택 mba = mba[, 4:16] head(mba) # MBTI 범주형 변환 mba$MBTI = as.factor(mba$MBTI) # 최종 LDA 모델 model_final = lda(MBTI ~ ., data = mba) # 새로운 사람 점수 입력 new_person = data.frame( Social_Energy = 65.0, Reflection_Time = 35.0, Sensing_Detail = 40.0, Intuition_Vision = 72.0, Logic_Score = 45.0, Empathy_Score = 68.0, Structure_Preference = 38.0, Spontaneity = 65.0, Teamwork_Preference = 55.0, Creativity_Score = 60.0, Decision_Speed = 42.0, Planning_Habit = 40.0 ) # 예측 pred = predict(model_final, newdata = new_person) # 예측 MBTI pred$class # 각 MBTI 유형별 확률 pred$posterior #상위 3개 MBTI 후보를 보려면 sort(pred$posterior[1, ], decreasing = TRUE)[1:3] # ROAD_TYPE DISCRIMINANT ANALYSIS # 데이터 불러오기 mba = read.csv("civil_discriminant_500.csv") head(mba) # 필요한 열만 선택 mba = mba[, 2:6] head(mba) # ROAD_TYPE 범주형 변환 mba$Road_Type = as.factor(mba$Road_Type) # 최종 LDA 모델 model_final = lda(Road_Type ~ ., data = mba) # 새로운 도로 상황 입력 new_road = data.frame( Traffic_Volume = 720, Speed_kmh = 62.0, Noise_dB = 74.0, IRI_m_per_km = 3.60 ) # 도로 유형 예측 pred = predict(model_final, newdata = new_road) # 예측된 도로 유형 pred$class # 도로 유형별 예측 확률 pred$posterior sort(pred$posterior[1, ], decreasing = TRUE)