परिचय
मल्टी-इंडेक्स (MultiIndex) से उन पंक्तियों को हटाने के लिए जहां कोई भी स्तर NaN हो, multiIndex.dropna() मेथड का उपयोग करें और how='any' पैरामीटर सेट करें।
आवश्यक लाइब्रेरी आयात करें
import pandas as pd
import numpy as np
कुछ NaN मानों वाला मल्टी-इंडेक्स बनाएं
names पैरामीटर इंडेक्स में स्तरों के नाम सेट करता है।
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [np.nan, 20], [25, np.nan], [35, 40]], names=['a', 'b', 'c', 'd'])
मल्टी-इंडेक्स प्रदर्शित करें
print("मल्टी-इंडेक्स...\n", multiIndex)
किसी भी स्तर के NaN होने पर मान हटाएं
यहां तक कि एकल NaN मान के साथ भी, dropna() सभी मानों को हटा देगा। dropna() का "how" पैरामीटर इस के लिए "any" मान के साथ उपयोग किया जाता है।
print("\nकिसी भी स्तर के NaN होने पर मान हटाना...\n", multiIndex.dropna(how='any'))
पूर्ण उदाहरण
import pandas as pd
import numpy as np
# कुछ NaN मानों वाला मल्टी-इंडेक्स बनाएं
# names पैरामीटर इंडेक्स में स्तरों के नाम सेट करता है
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [np.nan, 20], [25, np.nan], [35, 40]], names=['a', 'b', 'c', 'd'])
# मल्टी-इंडेक्स प्रदर्शित करें
print("मल्टी-इंडेक्स...\n", multiIndex)
# मल्टी-इंडेक्स में किसी भी स्तर के NaN होने पर मान हटाएं
# यहां तक कि एकल NaN मान के साथ भी, dropna() सभी मानों को हटा देगा
# dropna() का "how" पैरामीटर इस के लिए "any" मान के साथ उपयोग किया जाता है
print("\nकिसी भी स्तर के NaN होने पर मान हटाना...\n", multiIndex.dropna(how='any'))
आउटपुट
मल्टी-इंडेक्स... MultiIndex([(5, nan, 25.0, 35), (10, 20.0, nan, 40)], names=['a', 'b', 'c', 'd']) किसी भी स्तर के NaN होने पर मान हटाना... MultiIndex([], names=['a', 'b', 'c', 'd'])
व्याख्या
- पहली पंक्ति: स्तर 'b' NaN है → हटाई गई।
- दूसरी पंक्ति: स्तर 'c' NaN है → हटाई गई।
how='any': यदि कोई भी स्तर NaN है तो पूरी पंक्ति हटा देता है।- परिणाम: खाली मल्टी-इंडेक्स।
- डेटा सफाई के लिए उपयोगी जब पूर्ण पंक्तियों की आवश्यकता हो।