Pandas DataFrames डेटा हेरफेर के लिए शक्तिशाली उपकरण प्रदान करते हैं, और सॉर्टिंग एक मौलिक ऑपरेशन है। यह लेख एकल कॉलम द्वारा DataFrame को कुशलतापूर्वक सॉर्ट करने के तरीके का पता लगाता है, महत्वपूर्ण sort_values()
विधि और इसके प्रमुख तर्कों: ascending
और na_position
पर ध्यान केंद्रित करता है।
विषयवस्तु की तालिका
ascending
के साथ सॉर्ट क्रम को नियंत्रित करनाna_position
के साथ लापता मानों को संभालना- एक से अधिक कॉलम द्वारा सॉर्टिंग
- इन-प्लेस सॉर्टिंग
ascending
के साथ सॉर्ट क्रम को नियंत्रित करना
sort_values()
विधि सॉर्टिंग दिशा पर सीधा नियंत्रण प्रदान करती है। ascending
तर्क, जो डिफ़ॉल्ट रूप से True
(आरोही क्रम) होता है, यह निर्धारित करता है कि आरोही या अवरोही क्रम में सॉर्ट करना है या नहीं।
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 22, 28],
'Score': [85, 92, 78, 88]}
df = pd.DataFrame(data)
# 'Age' द्वारा आरोही सॉर्ट
df_ascending = df.sort_values(by='Age')
print("आरोही:n", df_ascending)
# 'Age' द्वारा अवरोही सॉर्ट
df_descending = df.sort_values(by='Age', ascending=False)
print("nअवरोही:n", df_descending)
लापता मानों को na_position
के साथ संभालना
लापता मानों (NaN) वाले डेटासेट से निपटते समय, na_position
तर्क क्रमबद्ध कॉलम के भीतर इन मानों की नियुक्ति को नियंत्रित करता है। यह दो मान स्वीकार करता है:
'first'
(डिफ़ॉल्ट): क्रमबद्ध कॉलम की शुरुआत में NaN मान रखता है।'last'
: क्रमबद्ध कॉलम के अंत में NaN मान रखता है।
import pandas as pd
import numpy as np
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve'],
'Age': [25, 30, np.nan, 28, 22],
'Score': [85, 92, 78, 88, 95]}
df = pd.DataFrame(data)
# NaN मान पहले
df_na_first = df.sort_values(by='Age', na_position='first')
print("NaN पहले:n", df_na_first)
# NaN मान बाद में
df_na_last = df.sort_values(by='Age', na_position='last')
print("nNaN बाद में:n", df_na_last)
एक से अधिक कॉलम द्वारा सॉर्टिंग
आप by
तर्क में एक सूची पास करके इसे आसानी से कई कॉलम द्वारा सॉर्ट करने के लिए विस्तारित कर सकते हैं। Pandas सूची में पहले कॉलम द्वारा, फिर दूसरे द्वारा, और इसी तरह सॉर्ट करेगा।
# आयु (आरोही) द्वारा फिर स्कोर (अवरोही) द्वारा सॉर्ट करें
df_multi = df.sort_values(by=['Age', 'Score'], ascending=[True, False])
print("nबहु-स्तंभ सॉर्ट:n", df_multi)
इन-प्लेस सॉर्टिंग
डिफ़ॉल्ट रूप से, sort_values()
एक *नया* क्रमबद्ध DataFrame देता है। DataFrame को सीधे संशोधित करने के लिए, inplace
तर्क को True
पर सेट करें। ध्यान दें कि यह मूल DataFrame को संशोधित करता है, इसलिए सावधानी बरतें।
df.sort_values(by='Age', inplace=True)
print("nइन-प्लेस सॉर्ट:n", df)
इन तर्कों को समझने और उनका उपयोग करने से, आप अपने Pandas DataFrames को कुशलतापूर्वक और सटीक रूप से क्रमबद्ध कर सकते हैं, जिससे आपकी डेटा विश्लेषण कार्यप्रवाह को सुव्यवस्थित किया जा सकता है।