728x90

전체 글 148

데이터 프레임에서 특정 데이터 추출(globals())

정말 간만에 포스티입니다 현생이 너무 바빠서 오랜만에 쓰는 것 같습니다 제 블로그 누적 방문자수가 드디어 1만명을 넘었습니다! 많은 관심 감사드리고 앞으로도 유용한 코드 많이 기록해보겠습니다! 오늘은 특정 데이터에서 특정 날짜와 최대, 최소를 추출하는 법을 써보겠습니다 먼저 이 코드를 만들게 된 계기는 같은 학과 후배의 도움 요청으로 하게 되었습니다 이 코드가 하는 일은 1973년부터 2023년까지의 9월 평균기온, 최고기온, 최저기온을 가져옵니다 9월 1일부터 30일 별로 최고기온, 최소기온을 모아서 새로운 리스트를 동적변수를 사용해서 만듭니다 그리고 30일치의 최고기온에서 최대, 최소, 최저기온에서도 최대 최소를 각각 뽑아내어 그림을 그릴겁니다 코드입니다 import numpy as np import..

파이썬 2023.10.18

건조공기의 이상기체 방정식 그래프 그리기(대기 열역학)

오늘은 건조 공기의 이상기체 방정식인 Pv = RT(alpha가 없어서 v로 썼습니다)를 비적과 온도를 변화시켜가며 그려보겠습니다 이 포스팅은 대기 열역학 과제입니다 정확한 문제는 다음과 같습니다 문제 4. Pv = RT [for dry air], 건조공기이므로 R을 그대로 사용하여 v - P diagram을 그리시오 (v의 범위는 1.0 ~ 2.5) 먼저 코드입니다 import numpy as np import matplotlib.pyplot as plt x1 = np.arange(0.574, 2.51, 0.01) x2 = np.arange(0.861, 2.51, 0.01) x3 = np.arange(1.148, 2.51, 0.01) t1 = 200 t2 = 300 t3 = 400 r = 287 p =..

파이썬 2023.09.25

Monin-Obukhov Similarity Theory Curve 파이썬으로 그려보기

이번에는 대기 경계층 시간에 배운 Monin-Obukhov Similarity Theory Curve를 그려보겠습니다 구체적인 수식은 위키피디아에서 참고했습니다 https://en.wikipedia.org/wiki/Monin%E2%80%93Obukhov_similarity_theory Monin–Obukhov similarity theory - Wikipedia From Wikipedia, the free encyclopedia Monin–Obukhov (M–O) similarity theory describes the non-dimensionalized mean flow and mean temperature in the surface layer under non-neutral conditions as ..

파이썬 2023.09.19

Linux 기본 디렉토리 구성

오늘은 리눅스 환경의 기본 디렉토리 구성을 알아보겠습니다 리눅스 환경이지만 저는 맥에서 예시를 가져왔기 때문에 조금 다를 수도 있습니다 1. / 먼저 루트 디렉토리 입니다 파일 시스템의 시작인 디렉토리입니다 모든 경로 가장 앞에 붙은 /는 루트 디렉토리라고 보시면 됩니다 구성은 다음과 같습니다 (base) lsh@isuhyeons-MacBook-Air Downloads % cd / (base) lsh@isuhyeons-MacBook-Air / % ls ApplicationsVolumesetcsbin Librarybinhometmp Systemcoresoptusr Usersdevprivatevar 맥의 경우는 이렇게 구성되어 있습니다 다음부터 나올 모든 디렉토리는 /___ 형식이기 때문에 모두 루트 밑에 ..

리눅스 2023.09.18

M1 Mac WRF_Python 라이브러리 설치하기

이번에는 wrf-python을 설치해보겠습니다 wrf-python을 설치할 때 이전 포스팅에서 basemap을 설치할 때와 같은 에러가 발생했습니다 이는 wrf-python 라이브러리가 basemap을 필요로 하기 때문입니다 그러면 basemap 문제를 해결하면 이 문제도 자동으로 해결된다는 거겠죠?? 해결법입니다 echo 'export GEOS_DIR=/opt/homebrew/Cellar/geos/3.12.0/' >> ~/.zshrc source ~/.zshrc 요렇게 환경변수를 선언해 주시구요 설치를 진행하시면 (base) lsh@isuhyeons-MacBook-Air / % pip install wrf-python Collecting wrf-python Downloading wrf-python-1...

Mac 2023.09.11

M1 Mac에 basemap 설치하기

오늘은 M1 Mac에 basemap을 설치해보겠습니다 원래는 tensorflow 설치 포스팅이 먼저와야 맞지만 이 에러가 해결이 되지 않다가 갑자기 해결되서 까먹기 전에 올리려구 합니다 0. 문제 발생 아마 완성되면 포스팅이 올라갈거지만 현재 다양한 라이브러리들과 tkinter를 이용해서 netcdf 시각화 툴을 만들어보는 중입니다 하지만 시각화하는 부분을 만드는 과정에서 에러가 발생하더군요 No module named 'mpl_toolkits.basemap' 그런데 저는 설치를 했는데도 이런 에러가 발생한겁니다 아나콘다 공식 홈페이지에 나와있는 코드를 입력해서 설치했습니다 conda install -c anaconda basemap 혹시 콘다로 설치한 basemap이 작동하지 않는건가 해서 pip in..

Mac 2023.09.11

Homebrew 설치와 사용

오늘은 mac 환경에서의 패키지를 다운로드하거나 제거하는 가장 중요한 Homebrew를 설치하고 사용도 해보겠습니다 pip install과 같은 기능을 함으로 저처럼 파이썬을 주로 사용하시는 분들은 필수일거라고 생각합니다 설치해보고 사용하고 설치된 파일을 확인하는 것까지 해보겠습니다 0. Homebrew? 설치에 앞서 homebrew가 정확히 무엇인지 알아보겠습니다 Homebrew는 Mac용 패키지 관리 애플리케이션입니다 흔히 윈도우나 리눅스에서 사용하는 파이썬을 설치 후에 타 라이브러리를 설치하기 위해서 사용하는 pip나 리눅스 환경에서 사용하는 apt install과 같은 일을 수행합니다 이 역시 터미널에서 작동하며 위의 두 가지 경우와 비슷하게 명령어를 입력하여 프로그램이나 패키지를 설치합니다 설치..

Mac 2023.09.10

내가 맥북 에어 M1을 산 이유

이번 포스팅은 제가 이번에 구매한 맥북에 대해 포스팅을 해보려고 합니다 1. 내가 맥북을 고르게 된 이유 제가 이번에 노트북을 바꿀 시기가 되면서 정말 고민을 많이 했습니다 초등학교 1학년 때 처음으로 컴퓨터를 접하게 되었고 그 이후로는 줄곧 윈도우만 사용해 왔습니다 하지만 대학교에 와서 보니 생각보다 리눅스를 써야하는 경우가 많았습니다 fortran이나 ncl, wrf 모델 등 참 많았습니다 그런데 기존에 wsl을 사용하면서 문제점들이 좀 많았었습니다 그러다보니 자연스럽게 아예 리눅스 환경으로 만들어진 맥에 눈길이 갔습니다 성능은 크게 중요하지 않았습니다 어차피 학교 서버에 접속해서 사용하는 저로써는 노트북 자체의 성능보다는 리눅스 환경과 더 친해지자는 목적이 더 강했습니다 많은 리뷰들을 찾아보니 m1..

Mac 2023.09.10

WRF-PYTHON 라이브러리로 WRF 결과물 시각화 (getvar, smooth2d)

이번 포스팅은 파이썬 라이브러리인 WRF-PYTHON을 사용해서 제가 만든 WRF 결과물을 시각화해보겠습니다 먼저 코드 입니다 1 import pygrib 2 import numpy as np 3 import matplotlib.pyplot as plt 4 from netCDF4 import Dataset 5 from wrf import to_np, getvar, smooth2d, get_basemap, latlon_coords 6 7 from matplotlib.cm import get_cmap 8 9 from mpl_toolkits.basemap import Basemap 10 11 f = Dataset('./wrfout_d01_2016-10-06_03.nc') 12 13 t = getvar(f, "..

파이썬 2023.09.01

vi 편집기 행 번호

이번 포스팅은 vi 편집기 행 번호를 나오게 하는 법입니다 포트란이나 파이썬 코딩을 리눅스로 할 경우 행번호를 알아야 할 경우가 있습니다 하지만 vi 편집기는 기본적으로 행 번호가 출력이 되지 않기 때문에 vimrc에서 켜줘야합니다 방법은 2가지이고 간단합니다 1. vi 편집기 내부에서 set number 입력 저장하고 나가기 입력할 때 처럼 커맨드 입력 상태에서 set number를 치고 엔터를 치시면 됩니다 하지만 이 방법은 일시적이기 때문에 vi 편집기를 나가거나 다른 파일을 열 경우는 다시 사라집니다 2. vimrc에서 변경 (base) lsh@DESKTOP-8N2HJ5V:~$ vi .vimrc vimrc는 숨겨진 파일이기 때문에 vi .vimrc라고 입력해주어야 합니다 만약에 파일이 켜졌는데 아..

리눅스 2023.08.31