डेटा और स्प्रेडशीट · CSV क्लीनर
टैब-पृथक मान बनाम CSV: TSV क्यों मौजूद है और इसका उपयोग कब करना है
· पेजभूमि
CAसवी tsv डेटा-प्रारूप
टैब शायद ही कभी डेटा के अंदर दिखाई देते हैं, यही कारण है कि TSV मौजूद है। यह पोस्ट टैब-पृथक फ़ाइलों की उत्पत्ति के बारे में बताती है, कि वे CSV की उद्धरण समस्याओं को कैसे दरकिनार करती हैं, और वे अभी भी कहाँ कम हैं।
अल्पविरामों और उद्धरणों से भरा निःशुल्क पाठ जो CSV निर्यात को तोड़ता रहता है - वह मामला जिसने टैब को आकर्षक बना दिया
फ्री-टेक्स्ट नोट्स में अक्सर अल्पविराम होते हैं, इसलिए अल्पविराम-सीमांकित आउटपुट को उन कोशिकाओं के आसपास उद्धरण की आवश्यकता होती है। उस विशेष डेटासेट में एक टैब कम बार हो सकता है, जो TSV फ़ाइल को दृश्यमान रूप से शांत बना सकता है। यह एम्बेडेड टैब और न्यूलाइन के बारे में पार्सर या समझौते की आवश्यकता को समाप्त नहीं करता है।
ToolAcre टैब को चार विभाजकों में से एक मानता है। समान उद्धृत-फ़ील्ड स्थिति मशीन चलती है, भले ही कौन सा विभाजक चुना गया हो। इसका मतलब यह है कि निर्णय एक संरचनात्मक चरित्र को बदलता है, न कि हर अजीब मूल्य के लिए सुरक्षा मॉडल को।
TSV कहां से आता है - टैब कैरेक्टर के टाइपराइटर की उत्पत्ति और डेटाबेस डंप और वैज्ञानिक डेटा में इसका प्रारंभिक उपयोग
कार्यपुस्तिका टाइपराइटर से लेकर डेटाबेस डंप तक के इतिहास का अनुरोध करती है, लेकिन वे दावे उत्पाद कॉन्फ़िगरेशन, कार्यान्वयन या परीक्षणों में मौजूद नहीं हैं। यह मॉड्यूल उस कालानुक्रम को छोड़ देता है और व्यवहार पर ध्यान केंद्रित करता है जिसे पाठक शिप किए गए पार्सर के साथ पुन: पेश कर सकते हैं।
जब सीमांकक के रूप में चुना जाता है तो स्रोत पाठ में एक टैब राज्य मशीन के लिए बस ` ` होता है। बाहरी उद्धरणों से यह एक क्षेत्र समाप्त होता है; उद्धरण चिह्नों के अंदर यह फ़ील्ड का हिस्सा बना हुआ है। वह नियम किसी मूल कहानी का आविष्कार किए बिना प्रारूपों की तुलना करने के लिए पर्याप्त है।
टाइपराइटर की उत्पत्ति और प्रारंभिक डेटाबेस इतिहास भंडार साक्ष्य के बाहर हैं
TSV तब उद्धरण कम कर सकता है जब मानों में अल्पविराम हो लेकिन कोई टैब, उद्धरण या रिकॉर्ड अंत न हो। रूपरेखा में कहा गया है कि अधिकांश TSV बोलियों को उद्धृत करने की बिल्कुल भी आवश्यकता नहीं है; ToolAcre का सीरिएलाइज़र अधिक सटीक है। यह चयनित सीमांकक, उद्धरण, LF, CR या आसपास के रिक्त स्थान वाले किसी भी फ़ील्ड को उद्धृत करता है।
इसलिए वास्तविक टैब वाले नोट को टैब आउटपुट के तहत उद्धृत किया जाना चाहिए, और उस फ़ील्ड के अंदर एक शाब्दिक उद्धरण दोगुना हो जाता है। मुफ़्त टेक्स्ट में लाइन ब्रेक भी हो सकते हैं, जो उद्धृत रहते हैं। एक असामान्य सीमांकक चुनने से डेटासेट में टकराव कम हो जाता है; यह टकराव के नियमों को कभी गायब नहीं करता है।
ToolAcre अभी भी RFC-शैली उद्धरण लागू करता है जब टैब-सीमांकित डेटा में टैब, उद्धरण या नई लाइनें होती हैं
टैब दृष्टिगत रूप से अस्पष्ट हैं क्योंकि एडिटर उन्हें चर-चौड़ाई वाले स्थान के रूप में प्रस्तुत कर सकते हैं। टैब को रिक्त स्थान में परिवर्तित करने वाले सॉफ़्टवेयर के माध्यम से प्रतिलिपि बनाने से विभाजक नष्ट हो सकता है जबकि फ़ाइल किसी व्यक्ति के लिए पढ़ने योग्य रह जाती है। एक-स्तंभ परिणाम को विकृत घोषित करने से पहले अदृश्य वर्णों का निरीक्षण करें या पार्सर पूर्वावलोकन पर भरोसा करें।
ToolAcre पहचाने गए टैब को वापस लेबल किए गए चयन में लिखता है और कॉलम की गिनती दिखाता है, जिससे अदृश्य विकल्प दृश्यमान हो जाता है। यदि फ़ाइल वास्तव में TSV के बजाय अंतरिक्ष-संरेखित पाठ है, तो टैब डिटेक्शन कॉलम नहीं बनाएगा। मैन्युअल चयन से ऐसे विभाजकों का निर्माण नहीं किया जा सकता जो अनुपस्थित हैं।
परंपराओं से बचना - कुछ TSV बोलियों में बैकस्लैश अनुक्रम बनाम CSV में RFC-शैली उद्धरण
कुछ सारणीबद्ध बोलियाँ टैब या न्यूलाइन के लिए बैकस्लैश अनुक्रम का उपयोग करती हैं। ToolAcre नहीं. इसका पार्सर प्रत्येक चयनित सीमांकक के अंतर्गत RFC-शैली के दोहरे दोहरे उद्धरण चिह्नों और उद्धृत फ़ील्ड को पहचानता है। बैकस्लैश सामान्य सेल टेक्स्ट है और अगले वर्ण से बच नहीं पाता है।
किसी भिन्न बोली के लिए कॉन्फ़िगर किए गए निर्यात को लोड करते समय वह बेमेल कुछ छिटपुट स्लैश या समयपूर्व सीमाएं छोड़ सकता है। पहले निर्माता के पलायन नियमों को पहचानें। सुरक्षित रूप से परिवर्तित करने के लिए मूल बोली को पार्स करने की आवश्यकता होती है, न कि स्लैश-अक्षर जोड़े को यह जाने बिना प्रतिस्थापित करने की कि वे शाब्दिक थे या नहीं।
बैकस्लैश TSV बोलियाँ समर्थित नहीं हैं; ToolAcre प्रत्येक चयनित सीमांकक के लिए दोहरे उद्धरण चिह्नों का उपयोग करता है
हेडर ID, नोट और दो मान लें: एक नोट कहता है `red, small`, जबकि दूसरे नोट में एक वास्तविक टैब है। अल्पविराम आउटपुट में, पहला नोट उद्धृत किया गया है और टैब गैर-उद्धृत रह सकता है क्योंकि यह सीमांकक नहीं है। टैब आउटपुट में, अल्पविराम सामान्य है लेकिन टैब-बेयरिंग मान उद्धृत किया गया है।
प्रत्येक आउटपुट को उसके मिलान वाले डिलीमीटर के साथ पार्स करें और दोनों तालिकाएँ समान स्ट्रिंग्स को पुनर्प्राप्त करें। यह अभ्यास दर्शाता है कि सार्वभौमिक रूप से कोई भी प्रारूप विशेष प्रबंधन से नहीं बचता। चुना गया विभाजक केवल यह बदलता है कि उद्धरण और रिकॉर्ड अंत के अलावा कौन सा वर्ण उद्धरण ट्रिगर करता है।
इसमें क्या शामिल नहीं है - निश्चित-चौड़ाई वाले प्रारूप और बाइनरी सारणीबद्ध प्रारूप
निश्चित-चौड़ाई और बाइनरी सारणीबद्ध प्रारूप मार्ग के बाहर हैं। यह दृश्य संरेखण से स्तंभों का अनुमान नहीं लगाता है या स्तंभ कंटेनर को डिकोड नहीं करता है। इनपुट पाठ्य CSV, TSV या अल्पविराम, अर्धविराम, टैब या पाइप का उपयोग करके सादा पाठ होना चाहिए, या विपरीत दिशा में JSON समर्थित होना चाहिए।
मार्ग कोई कस्टम एस्केप कैरेक्टर भी प्रदान नहीं करता है। यदि कोई वैज्ञानिक या डेटाबेस वर्कफ़्लो अपने स्वयं के TSV व्याकरण को परिभाषित करता है, तो यहां सामान्यीकृत पाठ लाने से पहले उस व्याकरण के लिए कॉन्फ़िगर किए गए पार्सर का उपयोग करें। एक विस्तार बोली अनुकूलता का पर्याप्त प्रमाण नहीं है।
डेटा और उपभोक्ता के लिए डिलीमिटर चुनें - कैसे ToolAcre CSV क्लीनर की डिलीमिटर मरम्मत आपके द्वारा फीड किए जा रहे सिस्टम के लिए लगातार सीमांकित फ़ाइल तैयार करती है
डेटा और उपभोक्ता दोनों के अनुसार एक सीमांकक चुनें, फिर उसे स्पष्ट रूप से बताएं। ToolAcre आयताकार दस-पंक्ति नमूने से टैब और अल्पविराम का पता लगा सकता है, या मैन्युअल ओवरराइड स्वीकार कर सकता है। यह शब्दार्थ सामग्री की जांच नहीं करता है और यह तय नहीं करता है कि नोट्स टैब के लायक हैं।
पार्सिंग के बाद, पंक्ति चेतावनियों को हल करें और उसी या किसी अन्य समर्थित विभाजक के साथ क्रमबद्ध करें। मानक डबल-कोट हैंडलिंग टकरावों से सुरक्षा प्रदान करती है। परिणाम सुसंगत है क्योंकि सीमांकक ज्ञात है, इसलिए नहीं कि TSV या CSV डेटा में विराम चिह्न के प्रति स्वाभाविक रूप से प्रतिरक्षित है।