जब मैं Auto डेटा सेट ISLR पैकेज में पढ़ता हूं, तो पहली नज़र में ऐसा लगता है कि 397 अवलोकन हैं। मैंने इसे tail() फ़ंक्शन का उपयोग करके निर्धारित किया। वास्तव में 392 अवलोकन हैं। मैं अच्छी तरह से कैसे पता लगा सकता हूं कि कौन से अवलोकन गायब हैं? मुझे आउटपुट के बाईं ओर संख्याओं के अनुक्रम की जांच करने का एक तरीका चाहिए।

r
1
Mary A. Marion 18 जुलाई 2016, 06:28
1
?setdiff शायद - उदा. setdiff(1:5, c(1,2,4,5)) रिटर्न 3
 – 
thelatemail
18 जुलाई 2016, 06:30
1
> setdiff(1:397,row.names(Auto)) [1] 33 127 331 337 355
 – 
Maiasaura
18 जुलाई 2016, 06:34

1 उत्तर

सबसे बढ़िया उत्तर

nrow(Auto) इंगित करता है कि वास्तव में 392 अवलोकन हैं, जैसा कि ?Auto करता है:

392 वाहनों के लिए गैस माइलेज, हॉर्सपावर और अन्य जानकारी।

दस्तावेज़ीकरण यह भी कहता है

मूल (एसआईसी) डेटा में 408 अवलोकन थे लेकिन लापता मूल्यों वाले 16 अवलोकन हटा दिए गए थे।

बस अनुमान लगा रहे हैं, लेकिन संभवतः 5 लापता अवलोकन डेटा के 'बॉडी' के भीतर थे और अन्य 11 अंत में थे ... यह देखने के लिए कि पंक्ति संख्या गैर-अनुक्रमिक हैं, कोशिश करें

setdiff(1:397,rownames(Auto))
[1]  33 127 331 337 355

बिल्कुल सीधे उपयोगी नहीं है, लेकिन

which(diff(as.numeric(rownames(Auto)))>1)

आसान भी हो सकता है।

1
Ben Bolker 18 जुलाई 2016, 06:32
यदि यह उत्तर उपयोगी था तो आप इसे अपवोट कर सकते हैं (यदि आपके पास पर्याप्त प्रतिष्ठा है), और किसी भी मामले में यदि यह आपके प्रश्न का संतोषजनक उत्तर देता है तो आपको इसे स्वीकार करने के लिए चेक-मार्क पर क्लिक करने के लिए प्रोत्साहित किया जाता है।
 – 
Ben Bolker
20 जुलाई 2016, 00:24
उत्कृष्ट उत्तर धन्यवाद।
 – 
Mary A. Marion
20 जुलाई 2016, 07:43