संख्यात्मक सहिष्णुता और भंडारण मोड की तुलना में मतभेद के अलावा, all.equal()
के विपरीत, identical
भी संबद्ध वातावरण की समानता परीक्षण करती है। आर में नियमित ऑब्जेक्ट्स सामान्य रूप से जुड़े वातावरण नहीं होते हैं - वे आमतौर पर function
और formula
(और terms
) ऑब्जेक्ट्स से जुड़े होते हैं।
ignore.environment:
x <- 2; environment(x) <- new.env()
y <- 2; environment(y) <- new.env()
all.equal(x,y) ## TRUE
identical(x,y) ## FALSE
एक ignore.environment
तर्क नहीं है: लेकिन वर्णन करने के लिए, मैं दो तुच्छ वस्तुओं अलग (नव निर्मित) वातावरण दे देंगे तार्किक संकेत अपने वातावरण को नजरअंदाज कर दिया जब जाना चाहिए बंद तुलना की तुलना।
लेकिन जब से यह केवल जब बंद (अर्थात कार्यों) की तुलना लागू किया जाता है, यह इस मामले में कोई फर्क नहीं करता है - और न ही जब सूत्रों या शब्दों वस्तुओं की तुलना में यह एक फर्क होगा।
स्रोत
2015-10-11 23:54:59
धन्यवाद, 'कोई सहनशीलता' कुंजी नहीं थी: 'all.equal (8.0, 9.0, सहिष्णुता = 1.0)' – mariotomo
एक और उदाहरण यह है कि 'समान()' इनट्स और लम्बे समय से अलग होंगे, भले ही उनके पास वही मान, जबकि 'all.equal()' कहेंगे कि वे बराबर हैं। – smci