मेरे पास उत्सर्जन में कटौती और प्रति कार लागत पर कुछ बुनियादी आंकड़े हैं:
q24 <- read.table(text = "reductions cost.per.car
50 45
55 55
60 62
65 70
70 80
75 90
80 100
85 200
90 375
95 600
",header = TRUE, sep = "")
मुझे पता है कि यह एक घातीय कार्य है, इसलिए मैं एक ऐसे मॉडल को खोजने में सक्षम होने की उम्मीद करता हूं जो इसके साथ फिट बैठता है:
model <- nls(cost.per.car ~ a * exp(b * reductions) + c,
data = q24,
start = list(a=1, b=1, c=0))
लेकिन मुझे एक त्रुटि मिल रही है:
Error in nlsModel(formula, mf, start, wts) :
singular gradient matrix at initial parameter estimates
मैंने जो त्रुटि देखी है, उस पर मैंने एक टन प्रश्न पढ़े हैं और मैं यह इकट्ठा कर रहा हूं कि समस्या शायद यह है कि मुझे बेहतर / अलग start
मूल्य ( initial parameter estimates
थोड़ा अधिक समझ में आता है) की आवश्यकता है, लेकिन मुझे यकीन नहीं है, दिया डेटा जो मेरे पास है, मैं बेहतर मापदंडों का आकलन कैसे करूंगा।
exp(50)
और exp(95)
y- मानों पर x = 50 और x = 95 पर। यदि आप c=0
y का लॉग सेट करते हैं और लेते हैं (एक रैखिक संबंध बनाते हैं), तो आप लॉग ( ) और लिए प्रारंभिक अनुमान प्राप्त करने के लिए प्रतिगमन का उपयोग कर सकते हैं जो आपके डेटा के लिए पर्याप्त होगा (या यदि आप मूल के माध्यम से एक पंक्ति फिट करते हैं, तो आप छोड़ सकते हैं 1 पर है और बस के लिए अनुमान का उपयोग ; वह भी अपने डेटा के लिए पर्याप्त होता है)। यदि उन दो मूल्यों के आसपास काफी संकीर्ण अंतराल के बाहर है, तो आप कुछ समस्याओं में भाग लेंगे। [वैकल्पिक रूप से एक अलग एल्गोरिथ्म आज़माएं]b a b b