HeadlinesBriefing favicon HeadlinesBriefing.com

जापानी पोस्टल CSV विश्लेषण

Hacker News •
×

कुछ समय पहले मैंने posuto जारी किया, एक ऐसे सॉफ़्टवेयर पैकेज जो जापानी पोस्टल कोड डेटा को आसान उपयोग योग्य फ़ॉर्मेट में प्रस्तुत करता है। यह जापान पोस्ट द्वारा जारी किए गए डेटा पर आधारित है, जो बहुत आमतौर पर उपयोग किया जाता है लेकिन पार्स करना कठिन है। मैंने पहली बार पोस्टल डेटा का ज्ञान पाने का तरीका जब मैंने ऑनलाइन फ़ॉर्म में अपना पोस्टल कोड दर्ज किया और उसे स्वचालित रूप से "XXX-borough (except the following buildings)" के रूप में पूरा कर दिया। मुझे उस कैफ़ेटेशनल में क्या बताया गया है, इसके बारे में कोई आईदा नहीं थी, इसलिए मैंने पोस्टल डेटा का एक सामान्य स्रोत खोजा, CSV फ़ाइल पाया और समस्या का पता लगाया। ऐसा है कि CSV फ़ाइल में पढ़ने वाले लोगों के लिए पठन योग्य नोट्स के साथ पैरेंथेसिस में सादे शब्द होते हैं और पंक्तियों के क्रम का संदर्भ देते हैं। यह समस्याएँ उत्पन्न करता है। डेटा मुख्यतः एक पंक्ति के रूप में उपयोगी होता है, जहाँ पैरेंथेसिस में सादे शब्द बिना किसी मतलब के हो जाते हैं। चूँकि CSV एक फ़ील्ड-डिलिमिटेड फ़ॉर्मेट है, इसलिए पैरेंथेसिस की आवश्यकता नहीं है - आप सिर्फ एक नोट्स फ़ील्ड जोड़ सकते हैं। यह केवल ken_all.csv के कई समस्यओं में से एक है। आप Twitter पर लगातार लोगों को जोश में पा सकते हैं और एक बार एक ब्लॉग भी इस विषय के बारे में इंटरनेट के कई जगहों से पोस्ट संकलित करता था। एक ख़ास मज़ेदार ट्वीट में वर्णित किया गया है कि जो लोग अपेक्षा रखते हैं कि कंप्यूटर मानव इच्छा को सम्मोहित करें उन्हें प्रत्येक समय तक ken_all.csv को पार्स करने के साथ नरक में दंडित किया जाएगा। फ़ाइल का README समझाता है कि फ़ील्ड बहुत लंबे होने वाली पंक्तियों को कई पंक्तियों में बाँट दिया जाएगा। विशेष रूप से, यदि नेबरहेड नाम 38 अक्षरों से अधिक हो, या यदि हाफ-वाइड कातकाना आवाज़ फ़ील्ड 76 अक्षरों से अधिक हो, तो पंक्ति दो पंक्तियों में बाँटी जाएगी। बहुत लंबे नेबरहेड फ़ील्ड जारी रहेगा और सभी अन्य फ़ील्ड पुनर्नक्षित किए जाएंगे। इसके अलावा, यह ध्यान रखना ज़रूरी है कि भले ही लंबाई की सीमाएँ जैसे दखली गई हों, उन लंबे पंक्तियों में लाइन ब्रेक की स्थिति पूरी तरह से यादृच्छिक प्रदर्शित होती है, अक्षर की सीमा पर या सामान्य शब्द सीमा पर नहीं। यह ध्यान देने योग्य है कि ken_all.csv के सभी समस्याएँ स्वयं तकनीकी नहीं हैं; पोस्टल कोड्स हमेशा जटिल होते हैं। CSV में सबसे अधिक पंक्तियों वाला पोस्टल कोड - एक चमत्कारी 66 - 〒452-0961 है, जो जापान के Aichi प्रेफ़ेक्चर के Kiyosu City के Haruhi क्षेत्र को संदर्भित करता है। यह इतनी अधिक पंक्तियों के कारण है क्योंकि हर नेबरहेड को अलग पंक्ति में मिलता है। इसके विपरीत, सबसे लंबी जुड़ी हुई पंक्ति, ऊपर के लाइन ब्रेक नियमों के उपयोग के साथ, 〒602-8368 या 〒602-8374 के एंट्री में होती है, जो आठ पंक्तियों के साथ होती है। दोनों Kyoto में कुछ ही क्षेत्रों में, जो एक अनोखे, अजीब और इंटरसेक्शन-आधारित पता प्रणाली का उपयोग करते हैं। कई क्षेत्रों के लिए सामान्य पोस्टल कोड्स होते हैं, जहाँ नेबरहेड "except the following" के रूप में दी जाती है, और सिर्फ उस exact स्ट्रिंग को खोजना और इसे निकालना ही एकमात्र काम होता है। समान स्ट्रिंग्स का एक विविध समूह होता है, और यह कठिन है कि मैंने उन्हें सब ढूंढ लिया हो या नहीं। किसी अन्य कमेंट का एक उदाहरण है 一円। सामान्यतः यह "एक येन" का अर्थ देता है, लेकिन यह "आसपास का क्षेत्र" भी होता है, और यह CSV में नेबरहेड नामों में हटाना चाहिए एक नोट है, विशेषकर...