पांडा में nan मान वाली पंक्तियों को कैसे हटाएं
अक्सर आप पांडा डेटाफ़्रेम में NaN मान वाली पंक्तियों को हटाना चाह सकते हैं। सौभाग्य से, पांडा ड्रॉपना() फ़ंक्शन का उपयोग करके ऐसा करना आसान है।
यह ट्यूटोरियल निम्नलिखित पांडा डेटाफ़्रेम पर इस फ़ंक्शन का उपयोग करने के कई उदाहरण दिखाता है:
import numpy as np import scipy.stats as stats #create DataFrame with some NaN values df = pd.DataFrame({'rating': [np.nan, 85, np.nan, 88, 94, 90, 76, 75, 87, 86], 'points': [np.nan, 25, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, np.nan, 5, 7, 6, 9, 9, 5], 'rebounds': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]}) #view DataFrame df rating points assists rebounds 0 NaN NaN 5.0 11 1 85.0 25.0 7.0 8 2 NaN 14.0 7.0 10 3 88.0 16.0 NaN 6 4 94.0 27.0 5.0 6 5 90.0 20.0 7.0 9 6 76.0 12.0 6.0 6 7 75.0 15.0 9.0 10 8 87.0 14.0 9.0 10 9 86.0 19.0 5.0 7
उदाहरण 1: NaN मान वाली पंक्तियाँ हटाएँ
हम NaN मान वाली सभी पंक्तियों को हटाने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:
df. dropna ()
rating points assists rebounds
1 85.0 25.0 7.0 8
4 94.0 27.0 5.0 6
5 90.0 20.0 7.0 9
6 76.0 12.0 6.0 6
7 75.0 15.0 9.0 10
8 87.0 14.0 9.0 10
9 86.0 19.0 5.0 7
उदाहरण 2: सभी NaN मानों वाली पंक्तियाँ हटाएँ
हम प्रत्येक कॉलम में सभी NaN मान वाली सभी पंक्तियों को हटाने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:
df. dropna (how=' all ') rating points assists rebounds 0 NaN NaN 5.0 11 1 85.0 25.0 7.0 8 2 NaN 14.0 7.0 10 3 88.0 16.0 NaN 6 4 94.0 27.0 5.0 6 5 90.0 20.0 7.0 9 6 76.0 12.0 6.0 6 7 75.0 15.0 9.0 10 8 87.0 14.0 9.0 10 9 86.0 19.0 5.0 7
इस विशेष डेटाफ़्रेम में सभी NaN मानों वाली कोई पंक्तियाँ नहीं थीं, इसलिए कोई भी पंक्तियाँ हटाई नहीं गईं।
उदाहरण 3: एक निश्चित सीमा से नीचे की पंक्तियाँ हटाएँ
हम उन सभी पंक्तियों को हटाने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं जिनमें कम से कम एक निश्चित संख्या में गैर-NaN मान नहीं हैं:
df. dropna (thresh= 3 ) rating points assists rebounds 1 85.0 25.0 7.0 8 2 NaN 14.0 7.0 10 3 88.0 16.0 NaN 6 4 94.0 27.0 5.0 6 5 90.0 20.0 7.0 9 6 76.0 12.0 6.0 6 7 75.0 15.0 9.0 10 8 87.0 14.0 9.0 10 9 86.0 19.0 5.0 7
मूल डेटाफ़्रेम की पहली पंक्ति में कम से कम 3 गैर-NaN मान नहीं थे, इसलिए वह एकमात्र पंक्ति थी जिसे हटा दिया गया था।
उदाहरण 4: किसी विशिष्ट कॉलम में नैन मान वाली पंक्ति हटाएँ
हम किसी विशिष्ट कॉलम में NaN मान वाली सभी पंक्तियों को हटाने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:
df. dropna (subset=[' assists ']) rating points assists rebounds 0 NaN NaN 5.0 11 1 85.0 25.0 7.0 8 2 NaN 14.0 7.0 10 4 94.0 27.0 5.0 6 5 90.0 20.0 7.0 9 6 76.0 12.0 6.0 6 7 75.0 15.0 9.0 10 8 87.0 14.0 9.0 10 9 86.0 19.0 5.0 7
उदाहरण 5: NaN वाली पंक्तियों को हटाने के बाद सूचकांक को रीसेट करें
हम NaN मानों वाली पंक्तियों को हटाने के बाद डेटाफ़्रेम के सूचकांक को रीसेट करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:
#drop all rows that have any NaN values df = df. dropna () #reset index of DataFrame df = df. reset_index (drop=True) #view DataFrame df rating points assists rebounds 0 85.0 25.0 7.0 8 1 94.0 27.0 5.0 6 2 90.0 20.0 7.0 9 3 76.0 12.0 6.0 6 4 75.0 15.0 9.0 10 5 87.0 14.0 9.0 10 6 86.0 19.0 5.0 77
आप ड्रॉपना() फ़ंक्शन के लिए संपूर्ण दस्तावेज़ यहां पा सकते हैं।