ASCII風速ファイルをラスターに変換する


11

私は成功せずに風速ファイルをラスターに変換しようとしています。これは、私がフォローしたArcgisフォーラムで議論されました。これには、セミコロンをスペースに置き換え、ヘッダーを追加する必要がありました。

元の.ascファイルの1つと、「クリーンアップ」した.csvバージョンを含めることを望んでいました。残念ながら、テキストをコピーして貼り付けずにこれを行う方法はわかりません。元の.ascファイルの最初の行は次のとおりです。

Conversion of speed45i.dat   Wind m/s  Wind Speed @ 45m N. Ire 
(100,  499); 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 

これを次のように変更しました。

ncols 700
nrows 1300
x||corner 0
y||corner 0
cellsize 1000                                                                                               "
"( 0 1299) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;"

ラスター変換変換形式プラグインを使用すると、エラーメッセージが表示されました。

プロセスの開始に失敗しました。呼び出されたプログラムが見つからないか、プログラムを呼び出すための十分な権限がない可能性があります。

どんな提案もありがたいことに受けました。


特定のデータセットに関するより具体的なヘルプが必要な場合は、常にDropBoxに例を入れてリンクを共有してみてください。
RyanKDalton

回答:


14

私はこれらのデータを非常によく知っています。これらは、わずかに悪名高いNOABL風速データです。ただし、それらをASCIIラスターに変換するのも正しい方法です。数年前に私が作成したヘッダーは次のとおりです。

ncols 700
nrows 1300
xllcorner 0
yllcorner 0
cellsize 1000
nodata_value -999
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

ヘッダーのxllおよびyll(「左下」を表す)に「l」の代わりにパイプ記号(「|」)を使用したようです。また、各行の先頭にある括弧内の数字と逆コンマも失います。スペースで区切ってください。かっこ内の数字は(解決していると思いますが)データ行の100キロメートルの開始座標を示します(1 kmの解像度です-かっこごとに100個の値があります)。これらの数値は、ESRI ASCIIラスターで冗長であるだけでなく、「壊れる」ことにもなります。

警告:
これらのデータは注意して使用してください。それらは非常に古く、英国全土に散らばるほんの一握りの気象観測所から補間されました。また、表面レベルの粗さや、局所レベルで風速に影響を与える他のほとんどの要因を考慮せずに補間されました。大まかなガイドとしては問題ありませんが、多くの場所で風速を過度に推定することで有名です。NOABLは北部諸島から任意のデータを使用していないので、例えば、私は定期的に、再度、多くの場合、80メートルの高さで風速計で測定した速度を巻くに匹敵することにNOABLの45メートルの風速を見つけ、しかし、私ははなはだにNOABLを発見した過小評価で風速シェトランド。NOABLデータのいくつかの出会いのあるステーション(私が思うに10だけ!)のいずれかの最も遠い北はウィックでした。

しかし、すべての警告は別として、賢明に使用すると、過大評価を理解し(そして経験を振り返って)、これらのデータを使用した風力発電量の計算結果が、より最新の厳密に収集されたデータ。ただし、それを福音とは見なさないでください。すべての場所が異なり、実際の風速は、いくつかの要因を挙げると、粗さ、オープンリーチ、地形によって大きく影響されます。

風速がプロジェクトにとって重要な場合は、必ずこれを出発点として使用しますが、農場に賭けないでください!

編集
括弧内の数字を削除するには、データを解析するPythonスクリプトを作成するか、簡単な代替方法があります:

  • テキストエディターでファイルを開き、最初の行を削除して( " Conversion of speed ... ")、すべてのスペースをグローバルに置き換えて、拡張子「.csv」で再保存します。
  • 次に、区切り文字をセミコロンに設定するスプレッドシートパッケージで開きます(ExcelおよびOpenOffice Calcでは、ファイルを開くときに確認メッセージが表示されます)。ここで、角括弧で囲まれたすべての数字を含む最初の列を選択して削除します。
  • 最初に6行を挿入し、ヘッダー(「ncols 700」など)を追加します。
  • 最後に拡張子「.asc」で保存しますが、区切り文字が保存のスペースであることを確認してください。

シルベスター、ありがとう。括弧内の数字の削除に問題があります。最初の数行は次のように表示されますか?nrows 1300 xllcorner 0 yllcorner 0 cellsize 1000 nodata_value -999 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
tedwalsh

@tedwalsh:それだけです。上記の回答を編集して、最初の行のほとんどを「コード」サンプルに追加しました。また、簡単な方法でブラケットを取り外す手順も追加しました。それでも苦労しているなら、あなたのメールアドレスでPMを送ってください(私のウェブサイトの連絡先セクションを見つけてください)、私はあなたのために何かを整理します。
MappaGnosis

1
NOABLデータセットは当時としてはかなりきれいでしたが、その時間はほぼ20年前でした。当時もそれに取り組んだことを覚えています。現在、典型的な風力タービンの高さでの実際の作業には最適ではありません。
スクルース

11

ASCIIデータファイルにNoData値がなく、x ||があります。およびy || xllとyllの代わりに。NoDataが-999であると仮定しています。

これを試して:

NCOLS 700
NROWS 1300
XLLCORNER 0
YLLCORNER 0
CELLSIZE 1000
NODATA_VALUE -999

テキストエディタで開いたASCIIは次のようになります。

NCOLS 700
NROWS 1300
XLLCORNER 0
YLLCORNER 0
CELLSIZE 1000
NODATA_VALUE -999
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

2
フォーマットに関してはこれは正しいように見えますが、ゼロとNoData値を混同することは重大な間違いかもしれません。ゼロは風速ゼロを示すために必要ですが、NoData値は風速に関する情報がないことを示します。
whuber

@tedwalshはこの情報を提供しなかったため、NoDataは0であると想定していました。
ガゴシルバ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.