我想從netCDF文件中取一個變量並打印出來。這裏是我的代碼使用Python從netCDF文件打印一個變量
import netCDF4
import netCDF4_utils
from netCDF4 import Dataset
from numpy.random import uniform
import csv
B = []
rootgrp = Dataset('test.cdf', 'r', format = 'NETCDF4')
f = open('testoutput.csv','wb')
b = (rootgrp.variables['grid_optical_depth'][:])
for x in b:
B.append(x)
f.write(str(B))
rootgrp.close()
f.close()
當我運行此我得到一個非常大集,這似乎是重複的數據,但我沒有看到我的for循環如何這樣做,不應該只通過運行數據集一次? 也有人可以說爲什麼數據打印出每組四行?如果我運行print rootgrp.variables['grid_optical_depth']
我得到
<type 'netCDF4.Variable'>
float32 grid_optical_depth(grid_time, range)
long_name: Grid_Aerosol_Optical_Depth_Profile
units: (n/a)
temporal_average: 20.0
unlimited dimensions:
current shape = (1440, 399)
這是否意味着這兩個數字的對應grid_time和憤怒值?我不認爲這是事實,因爲所有數字都小於1(大約10^-3和-4)。
任何幫助表示讚賞
添加編輯'b =(rootgrp.variables ['grid_optical_depth'] [:,:])'from [http://stackoverflow.com/questions/16641437/importing-variables-from-netcdf-into-python ?rq = 1]讓我得到了與之前相同的答案 – KJo
能否請您將a和b重命名爲您期望的結果? – 2013-07-23 17:22:17
我已經刪除了A,B應該只是一個氣溶膠光學部值的列表。我將這些附加到B,因爲我不能直接將'(rootgrp.variables ['grid_optical_depth'] [:])'寫入文件 – KJo