본문 바로가기

r12

R 주성분 분석 다음 코드를 이용하여 R에서 주성분 분석을 수행할 수 있습니다. 코드가 길어 보이지만 대부분 그림 그리는 내용이고, 실제로 PCA는 딱 한 줄로 실행됩니다. pca_result  R 기본 패키지(stats)에  PCA 함수인 princomp와 prcomp가 있는데, prcomp를 사용하세요.# Load necessary librarieslibrary(ggplot2)library(readr)library(dplyr)# Read the datadata % select_if(is.numeric)# Perform PCApca_result   그림을 다시 그리려면 적재값과 점수를 csv 파일로 출력하는 코드만 추가하면 됩니다.저는 R을 다른 소프트웨어 PCA 결과와 비교하는 용도로 사용하고, 실제 연구에는 별로.. 2024. 7. 1.
R로 작성한 전국 미세먼지 지도 에어코리아 1년 측정자료 중에서 도시대기측정망 자료만으로 연평균 미세먼지(PM2.5) 농도 지도를 그렸습니다(오른쪽 그림은 IDW로 보간한 그림입니다). 미세먼지 농도는 경기도와 충청도에서 높고, 울산과 부산 등은 상대적으로 낮은 수준입니다. 미세먼지 절대 농도는 부울경이 낮지만 미세먼지로 인한 초과 사망률과 산업단지 주변 암 발생율 등을 고려하면 부울경 미세먼지 독성이 상대적으로 높은 것으로 추정됩니다.   아래는 겨울(1, 2, 12월)과 여름(6, 7, 8) 농도 지도입니다. 겨울에 울산에서는 파란색만 보이지만, 여름에는 빨간색과 노란색도 보입니다. 절대 농도는 여름에 낮지만, 울산에서는 여름에 다른 지역에 비해 미세먼지 농도가 높은 것을 의미합니다. 여름철 주풍(남서풍)으로 인해 산업단지에서 배출.. 2024. 6. 1.
ChatGPT로 R 코드 작성: 미세먼지 자료로 그래프 그리기 도시대기측정소 1년 자료(1시간 간격 PM2.5 농도)로 월별 계절별 상자그림과 시간별 일별 시계열 그래프를 그리는 R 코드입니다. ChatGPT로 작성했습니다. # Install necessary packages install.packages(c("ggplot2", "dplyr")) library(ggplot2) library(dplyr) # Load data (e.g., from the data.csv file) data 2023. 10. 29.
옛날에는 어떻게 살았을까? 지금 서울 출장가면서 KTX 열차 안에서 노트북으로 자료를 찾고, 그래프를 그려보면서 미세먼지 오염특성을 해석하고 있습니다. 포항공대 박사과정에 재학할 때도 노트북이 없었기 떄문에 포항-서울 열차를 타고 다니면서 그 긴 시간 동안 창밖을 보며 온갖 생각만 했던 것 같습니다. 스마트폰도 없던 시절이었으니 역이나 버스 터미널에서 시사 혹은 영화 주간지를 사서 읽는 것이 낙이었습니다. 지금은 항상 노트북을 가지고 다니면서 KTX 특실에서 계속 "일"을 합니다. 심심할 겨를이 없습니다. 어떤 교수님은 사무실에 있으면 온갖 바쁜 일이 있어서 KTX 열차 안에서 오히려 논문을 더 많이 쓴다는 분도 있습니다. 옛날에는 어떻게 살았을까요? 옛날에는 노트북 없이 어떻게 살았을까? 스마트폰 없이 많은 일정을 어떻게 소화했.. 2023. 1. 10.
R 패키지 함수 편집하기 패키지 함수의 구체적인 소스 코드를 수정하는 방법입니다. 함수 코드 확인 방법 패키지명:::함수명 입력하고 엔터 openair:::trajPlot 함수 코드 편집하기 패키지 불러오고, 아래와 같이 편집 함수명 입력하고 엔터 trace(trajPlot, edit=TRUE) 아래와 같이 팝업창이 뜨면 코드를 수정하고 저장 버튼을 클릭합니다. 2022. 11. 19.
수동대기채취 지점별 시료채취율 산정 이전 연구에서는 수동대기채취기(PUF-PAS)의 시료채취율(sampling rate)을 상수로 사용했습니다(3.5 m3/day 등). 그러나 지점별로 기상조건이 다르기 때문에 지점별로 별도로 시료채취율을 산정할 필요가 있습니다(일반적으로 오염원을 파악하거나 보고서용으로는 기존 방법 사용해도 무방). 주말부터 3일 동안 엑셀과 R로 서울시 기상자료 가공하고, 매트랩으로 수동대기채취기 시료채취율(m3/day)을 계산했습니다(대상물질: PCBs). 매트랩 코드 다운로드: https://www.rsc.org/suppdata/c7/em/c7em00360a/c7em00360a2.zip 아래 그림은 AWS 기상측정소와 PAS 시료채취지점 위치를 표시하고 개별 AWS와 PAS 지점을 매칭하는 ArcGIS Pro 화면입.. 2022. 10. 18.
R 패키지 ggThemeAssist로 ggplot2 그래프 쉽게 수정하기 ggplot2 패키지로 그래프를 그리면 기본 R 그래프보다는 깔끔하지만, 축제목과 배경색 등을 수정하는데 많이 불편합니다. 아래와 같이 기본 꺾은선 그래프(회색 바탕에 작은 글자)를 쉽게 수정하기 위해서 ggThemeAssist 패키지를 사용합니다. 기본적으로 ggplot2가 설치되었다고 가정하고(openair 패키지로 울산 2015~2020 미세먼지 시간농도를 daily 데이터 세트에 입력), 아래 순서로 실행하고 GUI 에서 세부 옵션을 조정합니다. install.packages("ggThemeAssist") # 패키지 설치 library(ggThemeAssist) # 패키지 불러오기 gg 2022. 9. 12.
R & MATLAB 산점도에 날짜 컬러바(color bar) 추가하기 보통 2차원 혹은 3차원 산점도는 각각 2개와 3개의 변수 자료를 입력할 수 있는데, 점의 크기나 색깔을 이용해서 변수를 더 추가할 수 있습니다. 아래는 매트랩 예제입니다. 풍속, 일사량, 기온을 3차원 산점도로 나타내고 오존 농도를 컬러바로 표현했습니다. 3차원 산점도 플롯 만들기 - MATLAB & Simulink - MathWorks 한국 3차원 산점도 플롯 만들기 - MATLAB & Simulink - MathWorks 한국 이 예제의 수정된 버전이 있습니다. 사용자가 편집한 내용을 반영하여 이 예제를 여시겠습니까? kr.mathworks.com 대기오염 연구에서 컬러바는 보통 오염물질 농도로 그리는 경우가 많은데, 가끔은 날짜로 컬러바를 그리는 것이 효과적일 때도 있습니다. 아래 사이트를 참고해.. 2022. 4. 18.
코랩에서 R 사용하기 (클라우드) 아래 링크를 클릭하면 구글 코랩에서 파이썬이 아닌 R을 사용할 수 있습니다. https://colab.research.google.com/notebook#create=true&language=r Google Colaboratory colab.research.google.com 런타임 유형 변경을 클릭하면 파이썬이나 R을 선택할 수 있고, 하드웨어 가속기 설정도 가능합니다. 코랩에서 R 패키지 설치하기는 PC 버전과 동일합니다. 아래 사이트 참고하세요. How to Install Packages in R Google Colab | by Edo /ˈedō/ | Towards Data Science How to Install Packages in R Google Colab Some limitations and.. 2022. 2. 11.
미세먼지 이후 떠오르는 대기오염물질 - 오존 대류권 오존 1980-1990년대에는 성층권 오존층 파괴가 상당히 중요한 환경문제였습니다. 제 대학 시절 전공수업에서도 오존은 큰 비중을 차지했습니다. 국제적인 노력으로 오존층 파괴가 어느 정도 해결되고 나서 오존에 관한 관심은 크게 줄었는데, 요즘 다시 오존이 주목을 받고 있습니다. 미세먼지를 포함한 많은 대기오염물질 농도가 감소하고 있지만, 오존 농도는 지속해서 증가하고 있기 때문입니다. 아래 그림은 2015~2020년 월평균 오존 추세입니다. 여름철에 농도가 증가했다가 감소하는 계절 변화를 꾸준히 보이면서 매년 농도가 증가하고 있습니다. 오존은 복잡한 대기화학반응을 거치므로 오존의 증가 원인을 정확히 규명하기는 상당히 어렵습니다. 제 연구실에서는 울산의 휘발성유기화합물(VOCs)에 의한 오존의 2차.. 2021. 6. 28.