Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन - पांडस डेटाफ्रेम में एक बहु-स्तरीय कॉलम इंडेक्स से एक स्तर गिराएं

एक बहु-स्तरीय स्तंभ अनुक्रमणिका से किसी स्तर को गिराने के लिए, column.droplevel () का उपयोग करें। हमने मल्टीइंडेक्स का इस्तेमाल किया है

सबसे पहले, कॉलम के हिसाब से इंडेक्स बनाएं -

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'])]

# forming multiindex dataframe
dataFrame = pd.DataFrame(np.random.randn(9, 3), index=arr,columns=items)

अनुक्रमणिका को लेबल करें -

dataFrame.index.names = ['level 0', 'level 1']

इंडेक्स 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")])

# multiindex array
arr = [np.array(['car', 'car', 'car','bike','bike', 'bike', 'truck', 'truck', 'truck']),

np.array(['valueA', 'valueB', 'valueC','valueA', 'valueB', 'valueC','valueA', 'valueB', 'valueC'])]

# forming multiindex dataframe
dataFrame = pd.DataFrame(np.random.randn(9, 3), index=arr,columns=items)

# labelling index
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
         valueB  -2.077182  -2.027643  -0.523965
         valueC   1.021402  -0.384421   0.640215
bike     valueA  -2.271217   0.197185   0.304847
         valueB   0.119615  -0.520491  -0.746547
         valueC   1.856888  -0.491540  -1.754604
truck    valueA   0.829854  -0.204102  -1.130511
         valueB   0.310692   0.119087  -0.244919
         valueC  -0.245934  -2.141639  -1.298278

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
         valueB   -2.077182  -2.027643   -0.523965
         valueC    1.021402  -0.384421    0.640215
bike     valueA   -2.271217   0.197185    0.304847
         valueB    0.119615  -0.520491   -0.746547
         valueC    1.856888  -0.491540   -1.754604
truck    valueA    0.829854  -0.204102   -1.130511
         valueB    0.310692   0.119087   -0.244919
         valueC   -0.245934  -2.141639   -1.298278

  1. एक पाइपलाइन बनाएं और DataFrame से एक कॉलम हटाएं - पायथन पांडा

    पांडा डेटाफ़्रेम से एक कॉलम को हटाने के लिए pdpipe लाइब्रेरी की colDrop () विधि का उपयोग करें। सबसे पहले, आवश्यक पीडीपाइप और पांडा पुस्तकालयों को उनके संबंधित उपनामों के साथ आयात करें - import pdpipe as pdp import pandas as pd आइए एक डेटाफ्रेम बनाएं। यहाँ, हमारे पास दो कॉलम हैं - dataFrame = pd.Dat

  1. पायथन पांडा - डेटाफ्रेम से मल्टीइंडेक्स बनाएं

    डेटाफ़्रेम से मल्टीइंडेक्स बनाने के लिए, मल्टीइंडेक्स का उपयोग करें। from_frame () विधि। सबसे पहले, हम सूचियों का एक शब्दकोश बनाते हैं - d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],'Date_of_purchase': ['202

  1. पायथन - पंडों के डेटाफ़्रेम से अशक्त पंक्तियों को कैसे छोड़ें?

    पंडों के डेटाफ़्रेम में अशक्त पंक्तियों को छोड़ने के लिए, ड्रॉपना () विधि का उपयोग करें। मान लें कि कुछ NaN यानी शून्य मानों वाली हमारी CSV फ़ाइल निम्नलिखित है - आइए read_csv() का उपयोग करके CSV फ़ाइल पढ़ें। हमारा सीएसवी डेस्कटॉप पर है - dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Ca