জিরো সহ আমি কীভাবে অ-নেতিবাচক ডেটা রুপান্তর করব?


191

আমি যদি উচ্চ পজিটিভ ডেটা স্কাই করে থাকি তবে আমি প্রায়শই লগ নিই। তবে জিরোস অন্তর্ভুক্ত অত্যন্ত স্কেলযুক্ত অ-নেতিবাচক ডেটা দিয়ে আমার কী করা উচিত? আমি দুটি রূপান্তর ব্যবহার দেখেছি:

  • log(x+1) যার 0 টি 0 টি মানচিত্রের ঝরঝরে বৈশিষ্ট্য রয়েছে।
  • log(x+c) যেখানে সি হয় অনুমান করা হয় বা কিছু খুব ছোট ধনাত্মক মান হিসাবে সেট করা হয়।

অন্য কোন পন্থা আছে? অন্যদের চেয়ে একটি পদ্ধতির পছন্দ করার কোনও ভাল কারণ আছে কি?



5
স্ট্যাট.স্ট্যাকওভারফ্লো রূপান্তর এবং প্রচারের দুর্দান্ত উপায়!
রবিন গিরার্ড

হ্যাঁ, আমি @ গ্রোবিড়ার্ডকে সম্মতি জানাই (রব এর ব্লগ পোস্টের কারণে আমি এখনই এখানে পৌঁছেছি)!
এলি ক্যাসেলম্যান

বাম-সেন্সর করা ডেটার একটি অ্যাপ্লিকেশনটির জন্য stats.stackexchange.com/questions/39042/… দেখুন (যা বর্তমান প্রশ্নের মতো ঠিক স্থানের শিফ্ট পর্যন্ত চিহ্নিত করা যায়)।
whuber

2
প্রথমে রুপান্তরকরণের উদ্দেশ্য না জানিয়ে কীভাবে রূপান্তর করা যায় সে সম্পর্কে জিজ্ঞাসা করা অবাক বলে মনে হয়। কী অবস্থা? কেন এটি রূপান্তর করা প্রয়োজন? আপনি কী অর্জন করতে চাইছেন তা যদি আমরা না জানি, তবে কীভাবে যুক্তিসঙ্গতভাবে কোনও কিছু প্রস্তাব দেওয়া যায় ? (স্পষ্টতই কেউ স্বাভাবিকতায় রূপান্তরিত হওয়ার আশা করতে পারে না, কারণ সঠিক শূন্যগুলির একটি (শূন্য নন) সম্ভাবনা উপস্থিতি শূন্যের বন্টনে একটি স্পাইককে বোঝায়, যা কোনও পরিবর্তনকে সরিয়ে ফেলবে না - এটি কেবল এটিকে চারপাশে স্থানান্তর করতে পারে।)
Glen_b

উত্তর:


55

আমার কাছে মনে হয় যে রূপান্তরের সর্বাধিক উপযুক্ত পছন্দটি মডেল এবং প্রসঙ্গে প্রযোজ্য।

'0' পয়েন্টটি বিভিন্ন কারণে বিভিন্ন কারণে উত্থাপিত হতে পারে যার প্রতিটির আলাদা আলাদা আচরণ করা যেতে পারে:

  • কাটা (রবিনের উদাহরণ হিসাবে): উপযুক্ত মডেল ব্যবহার করুন (যেমন, মিশ্রণ, বেঁচে থাকার মডেল ইত্যাদি)
  • অনুপস্থিত ডেটা: যথাযথ হলে ডেটা / ড্রপ পর্যবেক্ষণগুলি ইমপুট করুন।
  • প্রাকৃতিক শূন্য পয়েন্ট (উদাঃ, আয়ের স্তর; একজন বেকার ব্যক্তির শূন্য আয় থাকে): প্রয়োজন অনুসারে রূপান্তর
  • যন্ত্র পরিমাপের সংবেদনশীলতা: সম্ভবত, ডেটাতে একটি অল্প পরিমাণ যুক্ত করুন?

আমি জেরোস থাকাকালীন কোনও সার্বজনীন, 'সঠিক' রূপান্তর নেই বলে আমি সন্দেহের সাথে উত্তর দিচ্ছি না।


6
আমার প্রশ্নের প্রতিটি উত্তরে দরকারী তথ্য সরবরাহ করা হয়েছে এবং আমি সেগুলি সবাইকে ভোট দিয়েছি। তবে আমি কেবল একটি উত্তর নির্বাচন করতে পারি এবং শ্রীকান্ত এর সেরা ওভারভিউ আইএমও সরবরাহ করে।
রব হেন্ডম্যান

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

82

কেউই উল্টো হাইপারবারিক সাইন ট্রান্সফর্মেশনটির কথা উল্লেখ করেনি। সম্পূর্ণতার জন্য আমি এটি এখানে যুক্ত করছি।

এটি বাক্স-কক্স রূপান্তরগুলির বিকল্প এবং by দ্বারা সংজ্ঞায়িত যেখানে । কোনও মানের জন্য শূন্য থেকে মানচিত্র zero বিসি-র দ্বি-পরামিতি যেমন ঠিক তেমন একটি দুটি পরামিতি সংস্করণও শিফটকে অনুমতি দেয়। বার্বিজ, ম্যাগি এবং রব (1988) H অনুমান সহ আইএইচএস রূপান্তর নিয়ে আলোচনা করেছেন ।θ > 0 θ θ

f(y,θ)=sinh1(θy)/θ=log[θy+(θ2y2+1)1/2]/θ,
θ>0θθ

আইএইচএস রূপান্তর নেতিবাচক মান এবং শূন্যগুলি সহ পুরো বাস্তব লাইনে সংজ্ঞায়িত ডেটা নিয়ে কাজ করে। বৃহত মানগুলির জন্য এটি (0 বাদে) মান নির্বিশেষে লগ রূপান্তরের মতো আচরণ করে । যেমন সীমিত ক্ষেত্রে দেয় ।θ θ 0 f ( y , θ ) yyθθ0f(y,θ)y

আইএইচএস রূপান্তরটি এর চেয়ে অনেক বেশি পরিচিত হওয়া উচিত বলে মনে হচ্ছে me


1
/ লজিস্টিক ট্রান্সফর্মেশনগুলির জন্য একটি ভাল বিকল্পের মতো মনে হচ্ছেtanh
ফায়ারব্যাগ

1
আইএইচএস সম্পর্কে কেউ কেউ একমত না বলে মনে করছেন: onlinelibrary.wiley.com/doi/10.1890/10-0340.1/abstract
kjetil b halvorsen

3
সেই কাগজটি বিপরীতমুখী সাইন ট্রান্সফর্মেশন সম্পর্কিত, বিপরীত হাইপারবালিক সাইন নয়।
ব্রায়ান

42

ভেরিয়েবলটি যখন রিগ্রেশনে স্বতন্ত্র ফ্যাক্টর হিসাবে ব্যবহৃত হয় তখন এটি দুটি ভেরিয়েবল দ্বারা প্রতিস্থাপন করা হয়: একটিটি বাইনারি সূচক যা শূন্য কিনা এবং অন্যটি মূল ভেরিয়েবলের মান বা এটির পুনঃপ্রকাশের, যেমন এর লগারিদম হিসাবে। এই কৌশলটি লজস্টিক রিগ্রেশন সম্পর্কিত হোসমার এবং লেমেশোর বইয়ে আলোচনা করা হয়েছে (এবং অন্যান্য জায়গায় আমি নিশ্চিত)। মূল পরিবর্তনশীলের ইতিবাচক অংশের কাটা সম্ভাবনা প্লটগুলি উপযুক্ত পুনঃপ্রকাশটি সনাক্তকরণের জন্য দরকারী। ( উদাহরণগুলির জন্য https://stats.stackexchange.com/a/30749/919 এ বিশ্লেষণটি দেখুন ))

পরিবর্তনশীল যখন লিনিয়ার মডেলটির উপর নির্ভরশীল হয় তখন সেন্সরড রিগ্রেশন ( টোবিট-এর মতো ) কার্যকর হতে পারে, আবার শুরু করা লোগারিদম তৈরির প্রয়োজন বজায় রাখে। ইকোনোমেট্রিশিয়ানদের মধ্যে এই কৌশলটি সাধারণ।


1
শূন্য-স্ফীত পোইসন হিসাবে মডেলিং ডেটা কি এই পদ্ধতির কোনও বিশেষ ঘটনা?
ডেভিড লেবাউর

4
@ ডেভিড, যদিও এটি দেখতে একই রকম মনে হয়, তা নয়, কারণ জিপটি নির্ভরশীল ভেরিয়েবলের একটি মডেল , স্বাধীন ভেরিয়েবলের নয়।
হোবার

1
@ হুবার এবং লজিস্টিক রিগ্রেশন সম্পর্কিত লেমশোর বইটিতে এই কৌশলটি আলোচনা করা হয়েছে কোনও সুযোগেই তারা জানতে পারবেন যে কোন অধ্যায়ে তারা এই কৌশলটি নিয়ে আলোচনা করেন? আমি তাদের বইটি দেখছি, তবে সঠিক পৃষ্ঠাটি খুঁজে
পাচ্ছে না

1
@ল্যান্ড্রোনি এইচ অ্যান্ড এল তখন আমার মনে সতেজ ছিল, তাই আমি এই বিষয়টির সাথে সম্পর্কিত বইটিতে কিছু আছে বলে আত্মবিশ্বাসী বোধ করি । (কিছু বড় রিগ্রেশন মডেল বিকাশের জন্য আমি এর সাথে পরামর্শ করেছি এবং অনেকগুলি স্বতন্ত্র ভেরিয়েবলকে এইভাবে চিকিত্সা করতে হয়েছিল।) তবে, আমি এই মুহুর্তে রেফারেন্সটি খুঁজে পাচ্ছি না। আপনি পরবর্তী পোস্টগুলিতে এই কৌশলটি সম্পর্কে লিখেছি, যদি আপনি বিশদটি সন্ধান করেন। দুটি সাইট সন্ধানে প্রদর্শিত হ'ল স্ট্যাটস.স্ট্যাকেক্সচেঞ্জ / প্রশ্নস / 636563৩ এবং স্ট্যাটস.স্ট্যাকেক্সেঞ্জেভিউ / সেকশনস / 8383৮১
whuber

1
@ ল্যান্ড্রোনি হ্যাঁ, এগুলি সমান, একইভাবে যে কোনও বাইনারি ভেরিয়েবলের সমস্ত সংখ্যাগত এনকোডিংগুলি সমান। আপনি যে কোনও ব্যাখ্যা করতে সবচেয়ে সুবিধাজনক বলে মনে করুন Choose
whuber

37

শিফট সহ লগ রূপান্তরগুলি বক্স-কক্স রূপান্তরের বিশেষ বিষয় :

y(λ1,λ2)={(y+λ2)λ11λ1when λ10log(y+λ2)when λ1=0

এগুলি নেতিবাচক মানগুলির জন্য বর্ধিত ফর্ম, তবে শূন্যযুক্ত ডেটাতে প্রযোজ্য। বক্স এবং কক্স (1964) সর্বাধিক সম্ভাবনা ব্যবহার করে জন্য উপযুক্ত মানগুলি খুঁজে পেতে একটি অ্যালগরিদম উপস্থাপন করে। এটি আপনাকে চূড়ান্ত রূপান্তর দেয়। λ

বক্স-কক্স রূপান্তরকে প্রাধান্য দেওয়ার কারণ হ'ল লিনিয়ার মডেলটির অনুমানগুলি নিশ্চিত করতে তারা বিকাশ করেছে। এটি দেখানোর জন্য কিছু কাজ করা হয়েছে যে এমনকি যদি আপনার ডেটাটি স্বাভাবিকতায় রূপান্তরিত না করা যায় তবে আনুমানিক এখনও একটি প্রতিসাম্যিক বিতরণে নেতৃত্ব দেয়।λ

আমি নিশ্চিত না এই কত ভাল আপনার ডেটা ঠিকানাগুলি আছি যেহেতু এটি যে হতে পারে যা শুধু লগ আপনাকে উল্লেখ করেছে রুপান্তর, কিন্তু এটা আনুমানিক হিসাব requried মূল্য হতে পারে এর আরেকটি কিনা তা দেখতে রূপান্তর উপযুক্ত।λλ=(0,1)λ

আর এ, boxcox.fitপ্যাকেজ ইন ফাংশনটি geoRআপনার জন্য প্যারামিটারগুলি গণনা করবে।


হুঁ, নতুন লাইন গ্রহণ করতে ল্যাটেক্সটি "আর্ট কেসগুলি" পেতে পারে না। : - /
Ars

@ বার্সে আমি আরম্ভের ক্ষেত্রে ব্যবহারের জন্য একন স্থির করেছিলাম। আমি আশা করি আমি প্রক্রিয়াটিতে ইকনগুলিকে ম্যাঙ্গাল করিনি।

1
@ রব: ওহ, দুঃখিত ডিগল এর জিওআর হ'ল উপায় - তবে lambda2=TRUEযুক্তিগুলিতে উল্লেখ করুন boxcox.fit। (
উত্তরটিও

3
: @ gd047: এখান একটা চমৎকার রেফারেন্স এর elevatorlady.ca/doc/refcard/expressions.html
Ars

6
যে কেউ এই ফাংশনটির সাথে কী ঘটেছে তা অবাক করে এই পাঠ করে, এটি এখন বলা হয় boxcoxfit
স্ট্রাগু

19

আমি সেই শূন্যটি ধরে রাখছি! = ডেটা অনুপস্থিত, এটি সম্পূর্ণ ভিন্ন প্রশ্ন।

একাধিক লিনিয়ার রিগ্রেশনে শূন্যগুলি কীভাবে পরিচালনা করতে হবে সে সম্পর্কে ভাবতে ভাবতে আমি আসলে আমাদের কতটি শূন্য রয়েছে তা বিবেচনা করার প্রবণতা রাখি?

মাত্র কয়েক শূন্য

যদি যুক্তিসঙ্গতভাবে বড় ডেটা সেটটিতে আমার একক শূন্য থাকে তবে আমি ঝোঁক:

  1. পয়েন্টটি সরান, লগগুলি নিন এবং মডেলটিকে ফিট করুন
  2. c

c

আপনি এই পদ্ধতিটি কিছুটা কম অপরিশোধিত করতে পারেন এবং আর্সের উত্তরে বর্ণিত শিফটগুলির সাথে বক্সকক্স পদ্ধতিটি ব্যবহার করতে পারেন।

বড় সংখ্যা জিরো number

যদি আমার ডেটা সেটটিতে প্রচুর পরিমাণে শূন্য থাকে, তবে এটি প্রস্তাব দেয় যে সহজ লিনিয়ার রিগ্রেশন কাজের জন্য সেরা সরঞ্জাম নয়। পরিবর্তে আমি মিশ্রণ মডেলিংয়ের মতো কিছু ব্যবহার করব (শ্রীকান্ত এবং রবিনের পরামর্শ অনুসারে)।


15

আপনি যদি দ্রুত এবং নোংরা কিছু চান তবে বর্গমূল ব্যবহার করবেন না কেন?


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

2
+1 টি। কিউব শিকড় সম্পর্কে একটি ছোট্ট নিবন্ধের জন্য দেখুন stata-jorter.com/article.html?article=st0223 (এটি প্রথম প্রান্তিক ২০১৪ থেকে একটি বিনামূল্যে .pdf হবে))
নিক কক্স

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

কোনও রূপান্তর @D_Williams দ্বারা বর্ণিত ক্ষেত্রে ভিন্নতা বজায় রাখবে না। মিশ্রণ মডেলগুলি (এই থ্রেডের অন্যত্র উল্লিখিত) সম্ভবত সেক্ষেত্রে একটি ভাল পদ্ধতির হতে পারে।
এমকেটি

10

আমি ধরে নিলাম আপনার কাছে অবিরাম ডেটা রয়েছে।

যদি ডেটাতে জিরোস অন্তর্ভুক্ত থাকে এর অর্থ আপনার শূন্যের উপরে একটি স্পাইক রয়েছে যা আপনার ডেটার কোনও নির্দিষ্ট দিকের কারণে হতে পারে। এটি বায়ু শক্তিতে উদাহরণস্বরূপ উপস্থিত হয়, 2 মি / সেঃ এর নীচে বাতাস শূন্য শক্তি উত্পাদন করে (এটিকে কাট ইন বলা হয়) এবং বায়ু ওভার (প্রায় কিছু) 25 মি / সেও শূন্য শক্তি উত্পাদন করে (সুরক্ষার কারণে, এটি কাটা বন্ধ বলা হয়) । উত্পাদিত বায়ু শক্তির বিতরণ অবিচ্ছিন্ন মনে হচ্ছে শূন্যের মধ্যে একটি স্পাইক রয়েছে।

আমার সমাধান: এই ক্ষেত্রে, আমি শূন্যের মধ্যে স্পাইকের মিশ্রণ এবং অবিচ্ছিন্ন বিতরণ অংশটির জন্য যে মডেলটি আপনি ব্যবহার করার পরিকল্পনা করেছিলেন (আর্ট লেবেসগু) তার সাথে আলাদা করে জিরোদের চিকিত্সা করার পরামর্শ দিই।


9

ফর্মের সাথে নেতিবাচক মানগুলিতে বিস্তৃত লগ-প্লাস-ওয়ান রূপান্তরকে @ রবহাইন্ডম্যানের দেওয়া উত্তরের তুলনা করা:

T(x)=sign(x)log(|x|+1)
r = -1000:1000

l = sign(r)*log1p(abs(r))
l = l/max(l)
plot(r, l, type = "l", xlab = "Original", ylab = "Transformed", col = adjustcolor("red", alpha = 0.5), lwd = 3)

#We scale both to fit (-1,1)
for(i in exp(seq(-10, 100, 10))){
  s = asinh(i*r)

  s = s / max(s)
  lines(r, s, col = adjustcolor("blue", alpha = 0.2), lwd = 3)
}
legend("topleft", c("asinh(x)", "sign(x) log(abs(x)+1)"), col = c("blue", "red"), lty = 1)

θθ1θ0

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


θx=0


8

যেহেতু দ্বি-প্যারামিটার ফিট বক্স-কক্স প্রস্তাবিত হয়েছে, ইনপুট ডেটা ফিট করতে, এটিতে একটি স্বেচ্ছাসেবী কাজ চালাতে (উদাহরণস্বরূপ সময় সিরিজের পূর্বাভাস) এবং তারপরে উল্টানো আউটপুট ফিরিয়ে আনার জন্য এখানে কিছু আর রয়েছে:

# Two-parameter Box-Cox function
boxcox.f <- function(x, lambda1, lambda2) {
  if (lambda1!=0) {
    return(((x + lambda2) ^ lambda1 - 1) / lambda1)
  } else {
    return(log(x + lambda2))
  }
}

# Two-parameter inverse Box-Cox function
boxcox.inv <- function(x, lambda1, lambda2) {
  if (lambda1!=0) {
    return((lambda1 * x + 1) ^ (1 / lambda1) - lambda2)
  } else {
    return(exp(x) - lambda2)
  }
}

# Function to Box-Cox transform x, apply function g, 
# and return inverted Box-Cox output y
boxcox.fit.apply <- function(x, g) {
  require(geoR)
  require(plyr)

  # Fit lambdas
  t <- try(lambda.pair <- boxcoxfit(x, lambda2=T)$lambda)

  # Estimating both lambdas sometimes fails; if so, estimate lambda1 only
  if (inherits(t, "try-error")) {
    lambda1 <- boxcoxfit(x)$lambda
    lambda2 <- 0
  } else {
    lambda1 <- lambda.pair[1]
    lambda2 <- lambda.pair[2]
  }
  x.boxcox <- boxcox.f(x, lambda1, lambda2)

  # Apply function g to x.boxcox. This should return data similar to x (e.g. ts)
  y <- aaply(x.boxcox, 1, g)

  return(boxcox.inv(y, lambda1, lambda2))
}

5

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

  1. Y এর বাইনারি সংস্করণে লজিস্টিক রিগ্রেশন,
  2. ওএলএস-এ Y,
  3. ওয়াই এর উপর সাধারণ রিগ্রেশন (PLUM) 5 টি বিভাগে বিভক্ত (যাতে ক্রেতাদের 4 টি সমান আকারের গ্রুপে ভাগ করা যায়),
  4. ওয়াইয়ের উপর বহুজাতিক লজিস্টিক রিগ্রেশন 5 টি বিভাগে বিন্যস্ত,
  5. Y এর লগ (10) এ ওএলএস (আমি কিউবটি চেষ্টা করার চেষ্টা করিনি), এবং
  6. ওএল-এ ওএলএস 5 টি বিভাগে বিন্যস্ত।

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


4
আপনি এটিকে দুটি মডেলে বিভক্তও করতে পারেন: গাড়ি কেনার সম্ভাবনা (বাইনারি প্রতিক্রিয়া) এবং গাড়ির কেনা মূল্য দেওয়া। এটি অনেক ক্ষেত্রে স্ট্যান্ডার্ড অনুশীলন, যেমন বীমা, credit

1
@ হংওই - এই পদ্ধতিটি কখন কার্যকর এবং প্রযোজ্য নয় সে বিষয়ে কোনও পড়াতে পরামর্শ দিতে পারেন?
রোল্যান্ডো 2

4

এখানে আলোচিত ইয়ে-জনসন পাওয়ার ট্রান্সফর্মেশনে বক্স কক্স পাওয়ার ট্রান্সফর্মেশনের শক্তির ভিত্তিতে জিরো এবং নেগেটিভগুলি পরিচালনা করার জন্য নকশা করা দুর্দান্ত বৈশিষ্ট্য রয়েছে। আমি যখন জিরো বা নেতিবাচক ডেটা নিয়ে কাজ করি তখন সাধারণত আমি এটি যাই to

ইয়ো-জনসন কেন বেশি পছন্দনীয় তা চিত্রিত করার জন্য এখানে পেশাদারদের সাথে রূপান্তরগুলির সংক্ষিপ্তসার রইল।

লগিন

পেশাদাররা: ইতিবাচক ডেটা সহ ভাল করে।

কনস: জিরো পরিচালনা করে না।

> log(0)
[1] -Inf

লগ প্লাস 1

পেশাদাররা: প্লাস 1 অফসেটটি ইতিবাচক ডেটা ছাড়াও শূন্যগুলি পরিচালনা করার ক্ষমতা যুক্ত করে।

কনস: নেতিবাচক তথ্য সহ ব্যর্থ

> log1p(-1)
[1] -Inf
> log1p(-2)
[1] NaN
Warning message:
In log1p(-2) : NaNs produced

বর্গমূল

পেশাদাররা: একটি পাওয়ার ট্রান্সফর্মেশন ব্যবহার করে যা শূন্য এবং ধনাত্মক ডেটা পরিচালনা করতে পারে।

কনস: নেতিবাচক তথ্য সহ ব্যর্থ

> sqrt(-1)
[1] NaN
Warning message:
In sqrt(-1) : NaNs produced

বক্স কক্স

আর কোড:

box_cox <- function(x, lambda) {

    eps <- 0.00001
    if (abs(lambda) < eps)
        log(x)
    else
        (x ^ lambda - 1) / lambda

}

পেশাদাররা: স্কেলড পাওয়ার ট্রান্সফর্মেশনগুলি সক্ষম করে

কনস: শূন্য এবং negativeণাত্মক সমস্যাগুলির দ্বারা ভোগা (যেমন কেবল ইতিবাচক ডেটা পরিচালনা করতে পারে।

> box_cox(0, lambda = 0)
[1] -Inf
> box_cox(0, lambda = -0.5)
[1] -Inf
> box_cox(-1, lambda = 0.5)
[1] NaN

ইয়ে জনসন

আর কোড:

yeo_johnson <- function(x, lambda) {

    eps <- .000001
    not_neg <- which(x >= 0)
    is_neg  <- which(x < 0)

    not_neg_trans <- function(x, lambda) {
        if (abs(lambda) < eps) log(x + 1)
        else ((x + 1) ^ lambda - 1) / lambda
    }

    neg_trans <- function(x, lambda) {
        if (abs(lambda - 2) < eps) - log(-x + 1)
        else - ((-x + 1) ^ (2 - lambda) - 1) / (2 - lambda)
    }

    x[not_neg] <- not_neg_trans(x[not_neg], lambda)

    x[is_neg] <- neg_trans(x[is_neg], lambda)

    return(x)

}

পেশাদাররা: ইতিবাচক, শূন্য এবং নেতিবাচক ডেটা পরিচালনা করতে পারে।

কনস: আমি ভাবতে পারি না এমন কিছুই। বৈশিষ্ট্যগুলি বক্স-কক্সের সাথে খুব মিল তবে শূন্য এবং নেতিবাচক ডেটা পরিচালনা করতে পারে।

> yeo_johnson(0, lambda = 0)
[1] 0
> yeo_johnson(0, lambda = -0.5)
[1] 0
> yeo_johnson(-1, lambda = 0.5)
[1] -1.218951

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

1

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

আপনি এখানে ক্লিক করে কাগজটি পেতে পারেন: https://ssrn.com/abstract=3444996

log(y)=βlog(x)+εβyx

YY+c>0

আমাদের নিবন্ধে, আমরা আসলে একটি উদাহরণ প্রদান করি যেখানে খুব ছোট ধ্রুবক যুক্ত করা আসলে সর্বোচ্চ পক্ষপাত প্রদান করে। আমরা পক্ষপাতিত্ব একটি অভিব্যক্তি প্রদান।

আসলে, পোইসন সিউডো সর্বাধিক সম্ভাবনা (পিপিএমএল) এই সমস্যাটির একটি ভাল সমাধান হিসাবে বিবেচিত হতে পারে। নিম্নলিখিত প্রক্রিয়াটি বিবেচনা করতে হবে:

yi=aiexp(α+xiβ)E(ai|xi)=1

βaiyi=0E(ai|xi)=1E(yiexp(α+xiβ)|xi)=0

i=1N(yiexp(α+xiβ))xi=0

yi=0

β

log(yi+exp(α+xiβ))=xiβ+ηi

আমরা দেখাই যে এই অনুমানকটি পক্ষপাতহীন এবং এটি কোনও মানক পরিসংখ্যান সংক্রান্ত সফ্টওয়্যার সহ জিএমএম সহ সহজেই অনুমান করা যায়। উদাহরণস্বরূপ, এটি স্টাটা সহ কোডের একটি লাইন প্রয়োগ করে অনুমান করা যায়।

আমরা আশা করি যে এই নিবন্ধটি সহায়তা করতে পারে এবং আমরা আপনার কাছ থেকে প্রতিক্রিয়া জানাতে চাই।

ক্রিস্টোফ বেলাগো এবং লুই-ড্যানিয়েল পেপ ক্রেস্ট - ইকোল পলিটেক্নিক - ইএনএসএই

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