參考自
#讀nc檔案需要用到netcdf4
import netcdf4 as nc
#開啟nc檔案
nc_obj=nc.dataset("c:\\users\\kong\\pycharmprojects\\replacencl\\meow")
#看看nc檔案中有甚麼
print(nc_obj)
root group (netcdf3_classic data model, file format netcdf3):
title: output from wrf v3.3.1 model
start_date: 2008-07-30_00:00:00
simulation_start_date: 2008-07-30_00:00:00
...dimensions(sizes): time(1), datestrlen(19), west_east(669), south_north(669),...
variables(dimensions): |s1 times(time,datestrlen), float32 lu_index(time,south_north,west_east), float32 znu(time,bottom_top), ...
groups:
#檢視nc檔案中的變數
print(nc_obj.variables.keys())
[u'times', u'lu_index', u'znu', u'znw', u'zs', u'dzs',...
#檢視u這個變數
print(nc_obj.variables['u'])
float32 u(time, bottom_top, south_north, west_east_stag)
fieldtype: 104
memoryorder: xyz
description: x-wind component
units: m s-1
stagger: x
coordinates: xlong_u xlat_u
unlimited dimensions: time
current shape = (1, 39, 669, 670)
filling off
#檢視u這個變數的屬性
print(nc_obj.variables['u'].ncattrs())
[u'fieldtype', u'memoryorder', u'description', u'units', u'stagger', u'coordinates']
#檢視u的其中乙個屬性「單位」
print(nc_obj.variables['u'].units)
m s-1
#讀取u的資料值
uu=nc_obj.variables['u'][:]
print(uu)
[[[[ -1.23765385e+00 -1.18628418e+00 -1.13026094e+00 ...,
...,
...,
...,
-2.50045204e+00 -2.50769806e+00 -2.52506447e+00]]]]
#隨便畫個直方圖看看吧
plt.hist(uu[0,0,0,:], color='gray')
plt.show()
#關閉檔案
nc_obj.close()
#新建檔案並寫入資料
da=nc.dataset("950hpa_llj_ageouvznum","w",format="netcdf4")
da.createdimension("latsize",usize[0])
da.createdimension("lonsize",usize[1])
da.createvariable("u","f8",("latsize","lonsize"))
da.createvariable("v","f8",("latsize","lonsize"))
da.createvariable("z","f8",("latsize","lonsize"))
da.createvariable("lon","f8",("latsize","lonsize"))
da.createvariable("lat","f8",("latsize","lonsize"))
da.createvariable("num","f8",("latsize","lonsize"))
da.variables["u"][:]=output_u
da.variables["v"][:]=output_v
da.variables["z"][:]=output_z
da.variables["lat"][:]=lat
da.variables["lon"][:]=lon
da.variables["num"][:]=output_num
da.description="950hpa,llj,ageouvznum"
da.author="konghoiio"
da.createdate="2016-10-05"
da.close()
Python檔案讀寫
今天在看python檔案讀寫操作,發現python file name mode buffering file 函式用於建立乙個file物件,它有乙個別名叫open 可能更形象一些,它們是內建函式。來看看它的引數。它引數都是以字串的形式傳遞的。name是檔案的名字。mode 是開啟的模式,可選的值為...
python檔案讀寫
檔案讀寫模式 模式 描述 r以讀方式開啟檔案,可讀取檔案資訊。w以寫方式開啟檔案,可向檔案寫入資訊。如檔案存在,則清空該檔案,再寫入新內容 a以追加模式開啟檔案 即一開啟檔案,檔案指標自動移到檔案末尾 如果檔案不存在則建立 r 以讀寫方式開啟檔案,可對檔案進行讀和寫操作。w 消除檔案內容,然後以讀寫...
python 讀寫檔案
python讀寫檔案在文字不大的情況可以用正常的 open 然後讀入 readline行讀入 或者整體讀入 read readlines 基本知識 file open path,r 說明 第乙個引數是檔名稱,包括路徑 第二個引數是開啟的模式mode r 唯讀 預設。如果檔案不存在,則丟擲錯誤 w 只...