আইটেমগুলির একটি স্বেচ্ছাসেবী নির্বাচনের জন্য কীভাবে কেবল লেবেলগুলি দেখানো যায়?


10

আমি আগ্রহী অন্যেরা কীভাবে এই সমস্যাটি সমাধান করতে চলেছেন: আপনি বিশাল সংখ্যক বৈশিষ্ট্যযুক্ত লেবেলযুক্ত কোনও কিছুর জন্য একটি মানচিত্র তৈরি করেছেন। গ্রাহক / ক্লায়েন্ট জিজ্ঞাসা করছে যে আপনি কিছু আপাতদৃষ্টিতে স্বেচ্ছাসেবী সিদ্ধান্তের (যেমন তারা গুরুত্বপূর্ণ বৈশিষ্ট্যগুলি কী বিবেচনা করে) এর ভিত্তিতে এক্স, ওয়াই এবং জেডের জন্য কেবল লেবেলগুলি দেখান। আপনি কীভাবে এটি করতে যাবেন?

কিছু ধারণা:

  • এই বিশেষ লেবেলের জন্য একটি নতুন স্ট্রিং কলাম তৈরি করুন এবং তারা যে বৈশিষ্ট্যগুলি দেখতে চান কেবল তার জন্য একটি মান পূরণ করুন (সদৃশ তথ্য হতে পারে)
  • একটি নতুন বুলিয়ান কলাম তৈরি করুন এবং তারা যে বৈশিষ্ট্যগুলি সত্যের সাথে দেখতে চান তা পতাকাঙ্কিত করুন, তারপরে QGIS 1.8 এ শর্তসাপেক্ষ লেবেলটি কেবলমাত্র বুলিয়ান সত্য হলে প্রদর্শন করতে পারেন

6
দ্বিতীয় ধারণার অনেক সুবিধা রয়েছে: (i) এটি পরিষ্কারভাবে নথিভুক্ত করে যা লেবেল করা দরকার, (ii) এটি অন্তর্নিহিত ডেটাসেটের মতো স্থায়ী এবং বহনযোগ্য, (iii) কোন লেবেল উপস্থিত হবে তা নির্ধারণ করার জন্য এটি একটি সহজ এবং প্রত্যক্ষ প্রক্রিয়া সরবরাহ করে ( যা অন্য জিআইএস বা প্লটিং প্যাকেজের কাছেও বহনযোগ্য), (iv) লেবেলের এই পছন্দগুলির সাথে এবং অন্য কোনও ভেরিয়েবলগুলির মধ্যে সম্পর্কের বিষয়ে যে কোনও প্রশ্ন রয়েছে এবং বিশ্লেষণ করে ক্লায়েন্টের পছন্দকে এনকোড করেও বিশ্লেষণ করা এমনকি উপযুক্ত is এটি কোনও সদৃশ তথ্য তৈরি করে না।
whuber

2
@ আপনি যে উত্তরটি দিতে পারেন তাই আমি এটির পক্ষে ভোট দিতে পারি কারণ আমি ঠিক এটিই করতাম।
নাথান ডাব্লু

উত্তর:


11

দ্বিতীয় ধারণা (নির্বাচনের জন্য বুলিয়ান বৈশিষ্ট্য তৈরি করতে) এর অনেক সুবিধা রয়েছে :

(i) এটি কীভাবে লেবেল করা প্রয়োজন তা স্পষ্ট করে দলিল করে,

(ii) এটি অন্তর্নিহিত ডেটাসেটের মতো স্থায়ী এবং পোর্টেবল,

(iii) কোন লেবেল উপস্থিত হবে তা নির্ধারণ করার জন্য এটি একটি সহজ এবং প্রত্যক্ষ প্রক্রিয়া সরবরাহ করে (যা অন্য জিআইএস বা প্লটিং প্যাকেজের কাছেও বহনযোগ্য),

(iv) লেবেল এবং অন্য কোনও ভেরিয়েবলগুলির এই পছন্দগুলির মধ্যে সম্পর্কের বিষয়ে যদি কখনও প্রশ্ন থাকে তবে এটি বিশ্লেষণে এমনকি কার্যকর and

(v) ক্লায়েন্টের পছন্দকে আনুষঙ্গিকভাবে এনকোড করে এটি কোনও সদৃশ তথ্য তৈরি করে না।

এখানে কার্যত কিছু সাধারণ ডাটাবেস নির্মাণ ও পরিচালনার নীতিমালা রয়েছে , যেমনটি বুদ্ধিমানের সাথে প্রশ্নে পরামর্শ দেওয়া হয়েছে। এর মধ্যে একটি হ'ল তথ্যগুলির কোনও সুসংগত অংশটি সম্ভব হলে ডাটাবেসে অনন্যভাবে উপস্থাপন করা উচিত । (অবশ্যই প্রয়োগের জন্য কী হিসাবে ব্যবহৃত তথ্য অবশ্যই জড়িত হয় এবং অবশ্যই সম্পর্কিত হয় বিভিন্ন টেবিলের সাথে সম্পর্কিত রেকর্ড সনাক্তকরণ হিসাবে এটির কার্যকারিতা অনুসারে একাধিক স্থানে উপস্থিত হতে হবে)) এই নীতিটির দুর্দান্ত কারণ রয়েছে, যে কেউ অ-সাধারণীকরণ বজায় রাখার চেষ্টা করেছে রিলেশনাল ডাটাবেস প্রত্যায়ন পারেন: আপনি ধারাবাহিকভাবে আপডেট বা অপসারণ বা এই তথ্য যোগ করার জন্য না মনে রাখবেন যে যে টেবিলটিতে এটি প্রদর্শিত হয়, শীঘ্রই আপনার ডাটাবেসটি অভ্যন্তরীণভাবে বেমানান হয়ে উঠবে: এটি দূষিত, প্রায়শই দুর্দশাগ্রস্ত হয়।

আরেকটি নীতি হ'ল একটি ভাল সম্পর্কযুক্ত ডাটাবেস ডিজাইনে, প্রতিটি টেবিলের একটি একক ধারণাগত "সত্তা" উপস্থাপন করা উচিত : এমন কিছু যা ডেটা মডেলিং হয় বা things জিনিসগুলির মধ্যে একটি সম্পর্ক। যখন কোনও ক্লায়েন্ট বৈশিষ্ট্যগুলির একটি আপাতদৃষ্টিতে স্বেচ্ছাসেবী নির্বাচন নির্দিষ্ট করে, তারা কার্যকরভাবে একটি সারণীতে সারিগুলির একটি উপসেট নির্দিষ্ট করে। গাণিতিকভাবে, বিচ্ছেদের অক্ষর দ্বারা এটি বুলিয়ান ক্ষেত্রের সাথে তাদের পতাকাঙ্কিত করার সমান। সুতরাং, একটি ডাটাবেসের জিনিসগুলির যে কোনও অর্থবহ "স্বেচ্ছাসেবী" উপসেটটি বুলিয়ান ক্ষেত্রের দ্বারা প্রতিনিধিত্ব করা যেতে পারে এবং বিপরীতভাবে, এই জাতীয় ক্ষেত্রটি স্বেচ্ছাসেবী সাবসেটগুলি (বা নির্বাচন) সঞ্চয় করার একটি ভাল উপায়।

তবুও আরেকটি নীতি হ'ল তথ্য সংরক্ষণের জন্য আপনার জিআইএসের অন্তর্নিহিত ডেটা ম্যানেজমেন্ট ক্ষমতা ব্যবহার করা পছন্দ করা উচিত । বিকল্পটি কিছু অ্যাডহক ocজিআইএসের "প্রকল্প ফাইলগুলি" বা অন্য কোনও স্বতন্ত্র উপায়ে তথ্য সংরক্ষণের সক্ষমতার উপর ভিত্তি করে পদ্ধতি। এর একটি সাধারণ উদাহরণ হ'ল পছন্দসই লেবেলগুলি ম্যানুয়ালি চয়ন এবং স্থাপনের অনুশীলন। এটি করার জন্য প্রায়শই এটি দ্রুত এবং সহজ। সমস্যাগুলি দেখা দেয় যখনই হয় পরিবর্তনের প্রয়োজন হয় বা কাজটির পুনরুত্পাদন করা প্রয়োজন; এই পরিস্থিতিতেগুলির একটি বা অন্যটি ব্যবহারিকভাবে অনিবার্য। আরডিবিএমএসের বাইরে চূড়ান্ত উপবৃত্তাকার পদ্ধতিতে লেবেলগুলির ম্যানুয়াল প্লেসমেন্ট তথ্য সংরক্ষণ করার সমতুল্য (যাহা বৈশিষ্ট্যের সাবসেটটি লেবেল করা উচিত)। যথা, নির্বাচনটি নির্দিষ্ট করে নির্দিষ্ট করে কোন লেবেল প্রদর্শিত হয় এবং কোনটি প্রদর্শিত হয় না। আপনি কীভাবে এই ফলো অন সমস্যাগুলি সমাধান করবেন তা ভেবে দেখুন:

  • ক্লায়েন্ট চায় যে একই লেবেল কোনও ভিন্ন প্রকল্পের অংশ সম্পর্কিত তবে ভিন্ন মানচিত্রে উপস্থিত হয়।

  • একটি প্রশ্ন ওঠে যে লেবেলগুলি অন্য কোনও বৈশিষ্ট্যের সাথে যুক্ত কিনা।

  • সময়ের সাথে সাথে লেবেলে বেশ কয়েকটি পরিবর্তন করার পরে, আপনাকে মূল সংস্করণে ফিরে যেতে বলা হবে।

এই ক্ষেত্রে, সমস্যার সমাধান করার জন্য জড়িত কাজটি প্রচুর পরিমাণে হতে পারে: আপনাকে আবার লেবেলটি আবার করতে হবে, বা ডাটাবেস টেবিলগুলির বিরুদ্ধে ম্যানুয়াল ক্রস-চেক করতে হবে, বা একটি পুরানো সংরক্ষণাগারযুক্ত প্রকল্প ফাইলটি সন্ধান এবং পুনরুদ্ধার করতে হবে। যদি লেবেলগুলির পরিবর্তে ডেটাবেজে একটি বুলিয়ান ক্ষেত্র দ্বারা প্রতিনিধিত্ব করা হত তবে এর পরিবর্তে কাজটি প্রায় তুচ্ছ।


1
আমি কেবল জিআইএস দিয়ে শুরু করছি তবে সফ্টওয়্যার বিকাশ থেকে কিছু ডাটাবেস জ্ঞান আছে। আমার সন্দেহ হয় শীঘ্রই আমার কাছে একটি পৃথক, ক্লায়েন্ট-নির্দিষ্ট টেবিল তৈরি করে মূল ডেটাसेटের সাথে 1-থেকে -1-এ যোগদান করা এবং সম্ভবত স্বচ্ছতার জন্য পোস্টগ্রিসএসকিউএল ভিউ হিসাবে সরবরাহ করে মূল ডেটাसेट সংরক্ষণের বিষয়ে একটি ফলোআপ প্রশ্ন থাকবে।
ব্রায়ান কেলি

হ্যাঁ, এটিও একটি ভাল সমাধান। আপনার ডাটাবেস জ্ঞান দিয়ে আপনি জানেন যে খুব কমই একটি নিখুঁত উত্তর আছে; সর্বদা ট্রেড অফস আছে। একটি চেহারা সারণী মার্জিত এবং কিছু পরিস্থিতিতে নিখুঁত। আসলে, প্রায়শই আপনাকে কেবল একটি নতুন টেবিলের প্রয়োজন হয় যা বৈশিষ্ট্যগুলির আইডিকে লেবেলযুক্ত করতে তালিকাবদ্ধ করে: স্তর বৈশিষ্ট্য টেবিলের সাথে একটি যোগ একটি নতুন (বিদেশী) ক্ষেত্র তৈরি করে যা বৈশিষ্ট্যগুলি লেবেল না করার জন্য শূন্য হয়, এবং আপনি যেতে ভাল। কিন্তু এখন আপনার কাছে ডাটাবেসে পরিচালনা করার জন্য একটি নতুন টেবিল রয়েছে: বাণিজ্য বন্ধ রয়েছে।
হোয়বার

8

আপনি সম্ভবত নতুন এক্সপ্রেশন-ভিত্তিক লেবেলিংয়ে নিয়মটি সেট করতে পারেন। নিয়মটি ফলাফল লেবেলগুলি পেতে আপনি যা করছেন তার ডকুমেন্টেশন হিসাবে কাজ করবে।

"বুলিয়ান পতাকা" পদ্ধতির উপর সুবিধা হ'ল সঠিক নিয়মে কাজ করার সময় এটি আরও নমনীয়। অন্তর্নিহিত ডেটা সেটটি পরিবর্তন না করে নিয়মটি পরিবর্তন এবং উন্নত করা সহজ। অন্যদিকে, এটি অন্যান্য জিআইএস প্যাকেজগুলির কাছে পোর্টেবল নয়।

এটি এমন একটি উদাহরণ যেখানে আমি কেবল ছয়টি অক্ষরের চেয়ে বেশি এবং নির্দিষ্ট শ্রেণীর সাথে নামের বৈশিষ্ট্যগুলি লেবেল করছি:

এখানে চিত্র বর্ণনা লিখুন


1
তবে এই ক্ষেত্রে নিয়মটি হ'ল "আমি এই বৈশিষ্ট্যগুলিকে গুরুত্বপূর্ণ এবং অন্যগুলি গুরুত্বপূর্ণ হিসাবে বিবেচনা করি না"। আমি মনে করি না যে এর জন্য কোনও ফাংশন রয়েছে :-)
ব্রায়ান কেলি

1
এছাড়াও, এই প্রশ্নটির সাথে "আমার কখন একটি ডেটা সেট পরিবর্তন করা উচিত এবং কখন এটি অনুলিপি করা উচিত?" আমি সন্দেহ করি যে এটি অনেক বড় কথোপকথন।
ব্রায়ান কেলি

আমি কেবল ধরে নিয়েছি যে এই গুরুত্বপূর্ণ বৈশিষ্ট্যগুলির কমপক্ষে একটি আইডি থাকবে যা আপনি ক্লজ অ্যাট্রিবিউটটি ব্যবহার করার মতো ব্যবহার করতে পারেন। উভয় সমাধানের একটি পেশাদার আছে।
আন্ডার ডার্ক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.