2017-07-15 14 views
1

私はnetcdfファイルを持っています。このファイルには、wspd_wrf_mとwspd_sodar_oという2つの変数があります。私はnetcdfファイルを読み込み、wspd_wrf_mとwspd_sodar_oの間のRMSE値を計算したいと思います。Netcdfファイルを読み込んでPythonでRMSEを計算する

変数は(1094、24)の次元(日、時)を使用しています ファイルの最後の365日からRMSEを計算します。これで私を助けることができますか?

from netCDF4 import Dataset 
import numpy as np 

g = Dataset('station_test_new.nc','r',format='NETCDF3_64BIT') 
wspd_wrf = g.variables["wspd_wrf_m"][:,:] 
wspd_sodar = g.variables["wspd_sodar_o"][:,:] 

しかし、どのように私は私が必要とする時間ごとのデータの最後の365日を選択して、ここからRMSEを計算します:

私が使用する必要があります知っていますか?

答えて

1

最後の365日を選択することは、アレイを正しいサイズにスライスすることです。例えば:

import numpy as np 
var = np.zeros((1094, 24)) 
print(var.shape, var[729:,:].shape, var[-365:,:].shape) 

出力した:

(1094、24)(365、24)(365、24)

var[729:,:]var[-365:,:]スライスの最後の365日あなたの1094日のサイズの配列の中で(すべての時間単位の値で)

Numpy manualにはさらに詳しい情報があります。

PythonでRMSEを計算する方法の例がたくさんあります(例:this)。それを試してみてください。それがうまくいかない場合は、あなたの試行であなたの質問を更新してください。

関連する問題