परिचय
पैंडास डेटाफ्रेम में मल्टी-लेवल कॉलम इंडेक्स से एक लेवल हटाने के लिए columns.droplevel() मेथड का उपयोग किया जाता है। हमने कॉलम-वाइज इंडेक्स बनाने के लिए MultiIndex.from_tuples() का उपयोग किया है।
चरण-दर-चरण कार्यान्वयन
1. कॉलम-वाइज इंडेक्स बनाएं
import pandas as pd
items = pd.MultiIndex.from_tuples([
("Col 1", "Col 1", "Col 1"),
("Col 2", "Col 2", "Col 2"),
("Col 3", "Col 3", "Col 3")
])
2. मल्टीइंडेक्स ऐरे बनाएं और डेटाफ्रेम तैयार करें
import numpy as np
arr = [
np.array(['car', 'car', 'car', 'bike', 'bike', 'bike', 'truck', 'truck', 'truck']),
np.array(['valueA', 'valueB', 'valueC', 'valueA', 'valueB', 'valueC', 'valueA', 'valueB', 'valueC'])
]
dataFrame = pd.DataFrame(np.random.randn(9, 3), index=arr, columns=items)
3. इंडेक्स को लेबल करें
dataFrame.index.names = ['level 0', 'level 1']
4. इंडेक्स 0 पर लेवल हटाएं
dataFrame.columns = dataFrame.columns.droplevel(0)
पूर्ण उदाहरण
import numpy as np
import pandas as pd
items = pd.MultiIndex.from_tuples([
("Col 1", "Col 1", "Col 1"),
("Col 2", "Col 2", "Col 2"),
("Col 3", "Col 3", "Col 3")
])
arr = [
np.array(['car', 'car', 'car', 'bike', 'bike', 'bike', 'truck', 'truck', 'truck']),
np.array(['valueA', 'valueB', 'valueC', 'valueA', 'valueB', 'valueC', 'valueA', 'valueB', 'valueC'])
]
dataFrame = pd.DataFrame(np.random.randn(9, 3), index=arr, columns=items)
dataFrame.index.names = ['level 0', 'level 1']
print("DataFrame...\n", dataFrame)
print("\nDropping a level...\n")
dataFrame.columns = dataFrame.columns.droplevel(0)
print("Updated DataFrame..\n", dataFrame)
आउटपुट
इससे निम्न आउटपुट प्राप्त होगा:
DataFrame... Col 1 Col 2 Col 3 Col 1 Col 2 Col 3 Col 1 Col 2 Col 3
level 0 level 1
car valueA 1.691127 0.315145 -0.695925 -2.077182 -2.027643 -0.523965 1.021402 -0.384421 0.640215
valueB -2.271217 0.197185 0.304847 0.119615 -0.520491 -0.746547 1.856888 -0.491540 -1.754604
valueC 0.829854 -0.204102 -1.130511 0.310692 0.119087 -0.244919 -0.245934 -2.141639 -1.298278
bike valueA -2.271217 0.197185 0.304847 0.119615 -0.520491 -0.746547 1.856888 -0.491540 -1.754604
valueB 0.119615 -0.520491 -0.746547 1.856888 -0.491540 -1.754604 -0.245934 -2.141639 -1.298278
valueC 1.856888 -0.491540 -1.754604 -0.245934 -2.141639 -1.298278 0.829854 -0.204102 -1.130511
truck valueA 0.829854 -0.204102 -1.130511 0.310692 0.119087 -0.244919 -0.245934 -2.141639 -1.298278
valueB 0.310692 0.119087 -0.244919 -0.245934 -2.141639 -1.298278 0.829854 -0.204102 -1.130511
valueC -0.245934 -2.141639 -1.298278 0.829854 -0.204102 -1.130511 0.310692 0.119087 -0.244919
Dropping a level...
Updated DataFrame..
Col 1 Col 2 Col 3 Col 1 Col 2 Col 3
level 0 level 1
car valueA 1.691127 0.315145 -0.695925 -2.077182 -2.027643 -0.523965
valueB 1.021402 -0.384421 0.640215 -2.271217 0.197185 0.304847
valueC 0.119615 -0.520491 -0.746547 1.856888 -0.491540 -1.754604
bike valueA 0.829854 -0.204102 -1.130511 0.310692 0.119087 -0.244919
valueB -0.245934 -2.141639 -1.298278 0.829854 -0.204102 -1.130511
valueC 0.310692 0.119087 -0.244919 -0.245934 -2.141639 -1.298278
truck valueA 0.829854 -0.204102 -1.130511 0.310692 0.119087 -0.244919
valueB -0.245934 -2.141639 -1.298278 0.829854 -0.204102 -1.130511
valueC 0.310692 0.119087 -0.244919 -0.245934 -2.141639 -1.298278