একটি ডেটাসেটে ভেরিয়েবলের নাম উন্নত করা


11

ভাল পরিবর্তনশীল নামগুলি হ'ল:

ক) সংক্ষিপ্ত / টাইপ করা সহজ,

খ) মনে রাখা সহজ,

গ) বোধগম্য / যোগাযোগমূলক।

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

আমি এই বিষয়গুলিতে ন্যায্য চিন্তাভাবনা বিনিয়োগ করছি কারণ হাজার হাজার মানুষ ডেটা ব্যবহার করছে এবং আমি আশা করি যে অনেকে আমার কোডটি ডেটা প্রস্তুত করতে এবং কিছু ধরণের বিশ্লেষণের সুবিধার্থে ব্যবহার করবে । কৈশোরস্বাস্থ্যের অনুদায়ী স্টাডি থেকে প্রাপ্ত ডেটাগুলি একাধিক ডেটাসেটে বিভক্ত। আমার প্রথম পদক্ষেপটি ছিল 227 ভেরিয়েবলগুলি সর্বাধিক ব্যবহৃত ডেটাসেটে নেওয়া, তাদের পুনরায় পুনঃনির্মাণ করা, তাদের আরও অর্থপূর্ণ নাম দেওয়া। আসল পরিবর্তনশীল নামগুলি হ'ল "সহায়তা", "এস 1", "এস 2" এর মতো জিনিস, যা আমি "امداد 2", "বয়স" এবং "পুরুষ.is" নামকরণ করেছি। অন্যান্য ডেটাসেটে হাজার হাজার অন্যান্য ভেরিয়েবল রয়েছে যা গবেষকের লক্ষ্যগুলি কী তার উপর নির্ভর করে একত্রী হতে পারে।

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

কিছু ভেরিয়েবল একাধিক সময়ে রেকর্ড করা হয়, যেমন রেস ভেরিয়েবলগুলি তাই আমি সংযোজন করলাম। I বা .ih তারা স্কুল থেকে বা ঘরে বসে প্রশ্নপত্র থেকে এসেছে কিনা তা বোঝাতে। তবে অবশ্যই কিছু পুনরাবৃত্তি রয়েছে যা সম্পর্কে আমি এখনও অবগত নই, প্রতিটি ভেরিয়েবলের নামের সাথে ডেটাসেটের একটি রেফারেন্স যুক্ত করা কি ভাল?

আমার গ্রুপ-সেন্টার এবং প্রচুর ভেরিয়েবলের মানককরণ করা দরকার, আমি যেভাবে কাজটি করেছি তা হল পুরুষদের দ্বারা এবং স্কুল দ্বারা জেড-স্কোর অর্থ .zms যুক্ত করে।

যে কোনও সাধারণ বা নির্দিষ্ট চিন্তাভাবনা বা সংস্থানগুলি প্রশংসিত হয় greatly আমার কিছু কোডের এবং এই ভেরিয়েবলের নামের তালিকা সহ বর্ণনামূলক পরিসংখ্যানগুলির জন্য এই সংগ্রহস্থলটি দেখুন । আমি এখানে এই কোডটি ভাগ করে নেওয়ার কারণটি সংক্ষেপে বর্ণনা করেছি এবং এটি এখানে কিছুটা প্রচার করা হয়েছিল , তবে এই শেষ দুটি লিঙ্কটি পরিবর্তনশীল নামকরণ কনভেনশনগুলির ইস্যুতে আসলেই প্রাসঙ্গিক নয়। যুক্ত: মন্তব্যগুলিতে স্পষ্ট কিছু বিভ্রান্তি এড়াতে চেষ্টা করার জন্য, আমি এটি হালকাভাবে সম্পাদনা করেছি, বেশিরভাগটি কেবল একটি অনুচ্ছেদে সরিয়ে নিয়েছি। চিন্তার জন্য ধন্যবাদ!

যোগ করা 2016-09-05: এটি হ্যাডলি উইকহ্যামের আর স্টাইল গাইড এবং গুগলের আর স্টাইল গাইডকে লক্ষ্য করার মতো ... হ্যাডলি বলেছেন:

পরিবর্তনশীল এবং ফাংশনের নামগুলি ছোট হাতের অক্ষর হওয়া উচিত। নামের মধ্যে শব্দ আলাদা করতে একটি আন্ডারস্কোর (_) ব্যবহার করুন।

গুগল বলেছে:

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


গবেষকদের মধ্যে ভাগ করে নেওয়ার জন্য একটি পাবলিক ভান্ডার স্থাপনের জন্য +1, যদিও এই প্রশ্নটি সত্যই স্ট্যাক ওভারফ্লোতে অন্তর্গত।
নিকো

6
এই প্রশ্নটি কেন, এসএনওতে আরও ভাল হবে? আমার কাছে এটি প্রোগ্রামিং বা এমনকি সম্পর্কে নয় R, বরং ডকুমেন্টিং এবং ডেটা ব্যবহারের জন্য যথাযথ অনুশীলনের বিষয়ে বলে মনে হয়।
whuber

4
@ শুভ: আপনার বক্তব্য আমি পেয়েছি যাইহোক, আমি প্রশ্নটি দেখেছি "আমি কীভাবে আমার চলকগুলি কল করব?" হিসাবে দেখেছি, যা আমার কাছে প্রোগ্রামিংয়ের মতো মনে হয় এবং পরিসংখ্যান সম্পর্কে নয় ... দ্বিতীয় ভাবাতে, এও সত্য যে এখানকার শ্রোতা আরও কাছাকাছি যা এসও এর চেয়ে প্রকৃত ডেটা ব্যবহার করবে।
নিকো

2
+1, আমি মনে করি এটি করার জন্য এটি দুর্দান্ত প্রশ্ন এবং কুডোস
গং - মনিকা পুনরায়

2
আমি মনে করি এটি খোলা থাকা উচিত।
গুং - মনিকা পুনরায়

উত্তর:


4

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

এই যন্ত্রপাতি সরবরাহকারী বিভিন্ন আর প্যাকেজ রয়েছে, যেমন Hmiscআপনি ব্যবহার করেন এবং memisc। তবে সত্যিই সর্বোত্তম বিকল্পটি পুরো জিনিসটিকে একটি আর প্যাকেজ তৈরি করা। এই পদ্ধতিতে প্রক্রিয়াকৃত ডেটা কোনও সংশ্লিষ্ট পৃষ্ঠার সাথে একটি অবজেক্ট হতে পারে যা এখন যা বলা হয় তা বর্ণনা করে এবং যেখানে যথাযথভাবে canণ প্রদান করতে পারে। চূড়ান্ত পণ্য তৈরি করতে আপনি কী করেছেন তা দেখার জন্য প্যাকেজটি লোকেদের কাঁচা ডেটা এবং আপনার প্রক্রিয়াকরণ কার্যাদিও প্রকাশ করতে পারে।

এছাড়াও, একটি পরামর্শ: চূড়ান্ত ডেটা অবজেক্টে ভেরিয়েবল এবং তাদের জেড-স্কোরিত সংস্করণগুলির মতো উত্সযুক্ত ডেটা অন্তর্ভুক্ত করবেন না যদি আপনি এটিকে সহায়তা করতে পারেন তবে পরিবর্তে এটি তৈরি করার জন্য কার্যাদি সরবরাহ করুন। প্রাপ্ত তথ্য ডেটা ম্যানেজমেন্ট দৃষ্টিকোণ থেকে সমস্যা trouble


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

4

এখানে একটি ছোট জিনিস: আমি মনে করি পিরিয়ডের চেয়ে আন্ডারস্কোর ব্যবহার করা ভাল। কারণটি হ'ল আর-এর মতো বেশিরভাগ প্রোগ্রামিং ভাষা সনাক্তকারীগুলিতে পিরিয়ড সমর্থন করে না, তবে প্রায় সমস্ত সমর্থন আন্ডারস্কোর করে। এবং আমি অনুমান করি যে আপনি চান যে আপনার ডেটাসেটটি এমন লোকদের কাজে লাগুক যাঁরা আর ব্যবহার করছেন না to


1

প্রথমত, এটি করার জন্য আপনাকে ধন্যবাদ - আমি নিশ্চিত যে অনেকে এটির প্রশংসা করবে, যদিও অনেকেই জানেন না যে আপনি এটি করেছেন।

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

সাধারণভাবে, আমি কিছু জটিল সংক্ষেপণ স্কিমের সাথে লেগে থাকার পরিবর্তে চলক নামগুলি দীর্ঘতর করার পরামর্শ দিই। এটির talk.prob.m.sumপরিবর্তে টাইপগুলি তৈরি করা সহজ talk.prob.sum.ms, এবং পরিসংখ্যানগত বিশ্লেষণে ত্রুটিগুলি চিহ্নিত করা এবং এটি সনাক্ত করা কঠিন। (কিছুটা সম্পর্কিত: একটি দুর্দান্ত বক্তব্য যা আমি কিছু ব্লগে পড়েছি তা হল স্ক্যান্ডিনেভিয়ার শব্দগুলির মতো আপনার পরিবর্তনশীল নামগুলি লিখতে হবে - হাসপাতাল এবং দাঁতের ডাক্তার পরিবর্তে সিকহাউস এবং টুথহিলার ))

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.