Ascii विंडसपीड फ़ाइलों को आपदाओं में परिवर्तित करना


11

मैं सफलता के बिना विंडसपीड फ़ाइलों को आपदाओं में बदलने की कोशिश कर रहा हूं। इसकी चर्चा एक आर्कगिस फोरम में की गई जिसका मैंने अनुसरण किया। इसमें रिक्त स्थान के साथ अर्ध-कॉलोनों को बदलना और हेडर जोड़ना शामिल था।

मैं मूल .asc फ़ाइलों में से एक को .csv संस्करण I 'क्लीन अप' के साथ शामिल करने की उम्मीद कर रहा था। दुर्भाग्य से मैं यह नहीं देख सकता कि पाठ को कॉपी और पेस्ट किए बिना ऐसा कैसे किया जाए। मूल .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 ;"

जब मैंने रास्टर अनुवाद रूपांतरण प्रारूप प्लग-इन किया तो मुझे त्रुटि संदेश मिला:

प्रक्रिया शुरू करने में विफल रही। या तो आह्वान किया गया प्रोग्राम गायब है, या आपके पास कार्यक्रम को लागू करने के लिए अपर्याप्त अनुमति हो सकती है।

किसी भी सुझाव कृतज्ञता प्राप्त की।


आप हमेशा ड्रॉपबॉक्स में एक उदाहरण डालने की कोशिश कर सकते हैं और एक लिंक साझा कर सकते हैं, यदि आप विशेष डेटासेट के साथ अधिक विशिष्ट सहायता चाहते हैं।
रयानKalton

जवाबों:


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 किमी के रिज़ॉल्यूशन पर है - इसलिए कोष्ठक के प्रत्येक सेट के बाद सौ मान हैं)। ये नंबर न केवल एक ESRI ASCII रैस्टर में निरर्थक हैं, बल्कि इसे 'ब्रेक' भी करेंगे।

गुफा:
सावधानी के साथ इन आंकड़ों का उपयोग करें। वे बहुत पुराने हैं और यूके में व्यापक रूप से फैले हुए मौसम संबंधी स्टेशनों में से एक छोटे से प्रक्षेपित किए गए थे। उन्हें सतह खुरदरापन और अधिकांश अन्य कारकों पर ध्यान दिए बिना प्रक्षेपित किया गया जो स्थानीय स्तर पर विंडस्पेड को प्रभावित करते हैं। वे एक मोटे गाइड के रूप में ठीक हैं, लेकिन कई स्थानों पर विंडस्पेड का अनुमान लगाने के लिए कुख्यात हैं । उदाहरण के लिए, मैं नियमित रूप से NOABL 45m विंडसपीड को अक्सर 80 मीटर की ऊँचाई पर एनेमोमीटर द्वारा मापी जाने वाली हवा की गति से तुलनीय पाता हूं, लेकिन फिर से, क्योंकि NOABL ने उत्तरी द्वीप समूह के किसी भी डेटा का उपयोग नहीं किया है, मैंने NOABL को कम हवाओं में कम करने के लिए पाया है । शेटलैंड। एनओएबीएल डेटा में कुछ मिले हुए स्टेशनों (केवल 10 मुझे लगता है!) में से किसी के सबसे दूर उत्तर में बाती थी।

हालाँकि, एक तरफ सभी चेतावनियाँ, मैंने पाया है कि जब बुद्धिमानी से इस्तेमाल किया जाता है, तो ओवरस्टिमेशन (और अनुभव के एक छिड़काव के साथ) को समझते हुए मैंने पवन-कृषि पैदावार की गणना के परिणाम इन आंकड़ों का उपयोग करते हुए गणना के लिए तुलनात्मक रूप से तारीख तक का उपयोग कर पाया है और कड़ाई से एकत्र डेटा। हालांकि, इसे सुसमाचार के रूप में न लें क्योंकि हर साइट अलग है और वास्तविक हवा की गति खुरदरापन, खुली पहुंच, स्थलाकृति के कारण कुछ कारकों को प्रभावित करती है।

अगर विंडसपीड आपकी परियोजना के लिए महत्वपूर्ण है, तो हर तरह से इसे एक प्रारंभिक बिंदु के रूप में उपयोग करें, लेकिन खेत पर दांव न लगाएं!

संपादित करें
कोष्ठक में संख्या को हटाने के लिए आप डेटा को पार्स करने के लिए एक पायथन स्क्रिप्ट लिख सकते हैं या इसके लिए एक आसान विकल्प है:

  • पाठ संपादक में फ़ाइल खोलें, पहली पंक्ति (" गति का रूपांतरण ... ") को हटा दें , विश्व स्तर पर सभी रिक्त स्थान को कुछ भी नहीं बदलें और एक्सटेंशन '.csv' के साथ फिर से सहेजें।
  • एक स्प्रेडशीट पैकेज में अगला खोलें सीमांकक को सेमीकॉलन सेट करने के लिए (एक्सेल और ओपनऑफ़िस कैल्क में आपको फ़ाइल खोलने पर पूछा जाएगा)। अब पहले कॉलम को चुनें जिसमें सभी ब्रैकेटेड नंबर हैं, और इसे हटा दें।
  • बहुत शुरुआत में छह पंक्तियाँ डालें और अपने हेडर ("ncols 700" आदि) को जोड़ें।
  • अंत में एक्सटेंशन '.asc' के साथ सहेजें लेकिन सुनिश्चित करें कि आपका सीमांकक सहेजने पर एक स्थान है।

सिल्वेस्टर, बहुत धन्यवाद। कोष्ठक में संख्याओं को हटाने में समस्या होना। क्या पहली कुछ पंक्तियाँ नीचे दी गई हैं? nrows 1300 xllcorner 0 yllcorner 0 कोशिकाओं को 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 0.0 0.0 0.0 0.0 0.0 से 0.0ैट पर फ़ीस में) की कीमत पर 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 के तक के 0.0 0.0 0.0 0.0 0.0 0.0 0.0 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

@stwalsh: यह बहुत ज्यादा है। मैंने अपने उत्तर को 'कोड' नमूने में पहली पंक्ति के अधिकांश भाग को जोड़ने के लिए संपादित किया। मैंने ब्रैकेट्स को आसान तरीके से हटाने के निर्देश भी जोड़े हैं। यदि आप अभी भी संघर्ष कर रहे हैं तो मुझे अपने ईमेल पते के साथ एक पीएम भेजें (मेरी वेबसाइट के संपर्क अनुभाग ढूंढें) और मैं आपके लिए कुछ छांट दूंगा।
मप्पाग्नोसिस

1
एनओएबीएल डेटा सेट अपने समय के लिए बहुत साफ था, लेकिन उस समय लगभग 20 साल पहले था। मुझे याद है कि मैं इसके साथ काम कर रहा था, तब भी। अब ठेठ पवन टरबाइन ऊंचाइयों पर वास्तविक काम के लिए उपयोग नहीं किया जाता है।
scruss

11

NoData मान आपकी ascii फ़ाइल में अनुपलब्ध है और आपके पास x है || और वाई || के बजाय xll और yll। मैं मान रहा हूं कि आपका NoData -999 है।

इसे इस्तेमाल करे:

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

एक टेक्स्ट एडिटर में आपकी एससीआई खुली होनी चाहिए:

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

मैं NoData को 0 मान रहा था, क्योंकि @tedwalsh ने यह जानकारी नहीं दी थी।
गागो-सिल्वा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.