학생부 본선진출팀이 공고되었습니다.

자세히보기

파이썬으로 nc파일 읽고 확인하기
house9895@naver.com
2023-10-11 10:57

안녕하세요 팀 은지짱짱걸입니다

파이썬으로 .nc 확장자 파일을 읽고 pandas데이터 프레임으로 변환하고 저장하는 방법에 대해서 소개하겠습니다

먼저 netCDF4라는 라이브러리를 설치 해줍니다

pip install netCDF4

netCDF4로 .nc파일을 읽어오고 보기 편하게 pandas 데이터 프레임으로 바꿔주기 위해

두 라이브러리를 불러옵니다

import pandas as pd
import netDEF4 as nc

이후에 데이터를 불러오고 .nc파일의 변수를 확인해 줍니다

# NetCDF 파일 열기
file_path = "data/NOAA_drifter_2005.nc"
dataset = nc.Dataset(file_path, "r")

# 파일 내의 변수 이름 확인
variables = dataset.variables.keys()
print(variables)
sealab image

변수로 'lons', 'lats', 'times', 'drifter', 'time' 이렇게 5개의 변수가 존재하고 각각을 데이터프레임으로 바꾸는 코드를 소개합니다

a = dataset["lons"]
b = dataset["lats"]
c = dataset["drifter"]
d = dataset["time"]
e = dataset["times"]

df_long = pd.DataFrame(a[:])
df_lat = pd.DataFrame(b[:])
df_drif = pd.DataFrame(c[:])
df_time = pd.DataFrame(d[:])
df_times = pd.DataFrame(e[:])

이렇게 하면 안에 들어있던 파일들을 전부 해체해서 쉽게 사용할 수 있게 볼 수 있습니다.

이것을 csv로 저장할려면

df_long.to_csv("data/long.csv", index = False)
df_lat.to_csv("data/lat.csv", index = False)
df_drif.to_csv("data/drift.csv", index = False)
df_time.to_csv("data/time.csv", index = False)
df_times.to_csv("data/times.csv", index = False)

이렇게 저장 하면 됩니다. 코드중에 index = False를 쓰지 않으면 index가 추가로 생성되니까 잊지 말아 주세요