pandas में str.lower() का उपयोग
जब आप pandas DataFrames के साथ काम करते हैं, तो टेक्स्ट फ़ॉर्मेटिंग को मानकीकृत करने के लिए str.lower() मेथड अक्सर सम्पूर्ण स्ट्रिंग कॉलम पर लागू किया जाता है। आइए एक उदाहरण देखें कि यह कैसे काम करता है।
यहाँ विभिन्न फलों की कीमतों को दर्शाने वाला एक नमूना डेटासेट है:
import pandas as pd
# Create a DataFrame
fruit_price = pd.DataFrame({
'name': [
'Apple', 'Banana', 'Orange', 'Watermelon',
'Plum', 'Blueberries', 'Dragonfruit', 'Kiwi'
],
'price_usd': [0.88, 0.23, 0.68, 3.98, 0.96, 5.16, 5.27, 1.12]
})
name price_usd
0 Apple 0.88
1 Banana 0.23
2 Orange 0.68
3 Watermelon 3.98
4 Plum 0.96
5 Blueberries 5.16
6 Dragonfruit 5.27
7 Kiwi 1.12
हम name कॉलम की सभी प्रविष्टियों को लोअरकेस में बदलने के लिए str.lower() मेथड लागू कर सकते हैं। यह इस प्रकार किया जाता है:
fruit_price['name'] = fruit_price['name'].str.lower()
print(fruit_price)
आउटपुट इस प्रकार है:
name price_usd
0 apple 0.88
1 banana 0.23
2 orange 0.68
3 watermelon 3.98
4 plum 0.96
5 blueberries 5.16
6 dragonfruit 5.27
7 kiwi 1.12
जैसा कि आप देख सकते हैं, name कॉलम की सभी प्रविष्टियाँ अब लोअरकेस में मानकीकृत हो गई हैं।
इंटरैक्टिव उदाहरण: मूवी डेटासेट में केस बदलना
आइए एक और उदाहरण देखें। मान लीजिए हम एक फिल्मों के डेटासेट पर काम कर रहे हैं। डेटासेट में प्रत्येक पंक्ति एक फिल्म को दर्शाती है, जिसमें शीर्षक (movie_title), शैली (movie_genre), और अवधि (movie_length) के कॉलम होते हैं। यहाँ प्रारंभिक डेटासेट दिया गया है:
import pandas as pd
# Create a DataFrame
movies = pd.DataFrame({
'movie_title': [
'The Sumif All Fears', 'The Seaborn Identity', 'The Matrices',
"There's Something About Merging", 'Mamma Median!',
'Harry Plotter', 'Kung Fu Pandas', 'While You Were Sorting',
'10 Things I Hate About UNIX'
],
'movie_genre': [
'Action', 'Action', 'Action', 'Comedy', 'Comedy',
'Kids', 'Kids', 'Romance', 'Romance'
],
'movie_length': [124, 119, 136, 119, 108, 159, 92, 103, 97]
})
हम movie_title कॉलम में टेक्स्ट को मानकीकृत करना चाहते हैं, इसके लिए सभी शीर्षकों को लोअरकेस में बदलेंगे। हम इसे .str.lower() मेथड का उपयोग करके इस प्रकार कर सकते हैं:
# Change movie_title column to lowercase
movies['movie_title'] = movies['movie_title'].str.lower()
# Look at the change
print(movies)
जब आप ऊपर दिया गया कोड चलाते हैं, तो यह निम्नलिखित परिणाम देता है:
movie_title movie_genre movie_length
0 the sumif all fears Action 124
1 the seaborn identity Action 119
2 the matrices Action 136
3 there's something about merging Comedy 119
4 mamma median! Comedy 108
5 harry plotter Kids 159
6 kung fu pandas Kids 92
7 while you were sorting Romance 103
8 10 things i hate about unix Romance 97
.str.lower() लागू करके, हम सुनिश्चित करते हैं कि movie_title कॉलम एक समान फ़ॉर्मेट में है, जो फ़िल्टरिंग, तुलना करने या केस-इनसेंसिटिव ऑपरेशंस करने जैसे कार्यों के लिए उपयोगी है।
Python में pandas DataFrame को साथ जोड़ने के बारे में अधिक जानने के लिए, हमारे कोर्स Python for Spreadsheet Users का यह वीडियो देखें।
यह सामग्री DataCamp के Chris Cardillo द्वारा बनाए गए Python for Spreadsheet Users कोर्स से ली गई है।
Python में लोअरकेस से जुड़े प्रश्न
Python में लोअरकेस क्या है?
यह वह लेटर केस है जब किसी स्ट्रिंग के सभी अक्षर छोटे होते हैं। लोअरकेस का विलोम अपरकेस है, जब किसी स्ट्रिंग के सभी अक्षर बड़े होते हैं। अन्यथा, यदि किसी स्ट्रिंग में छोटे और बड़े दोनों अक्षर हों, तो उसे मिक्स्ड केस कहते हैं।
Python में किसी स्ट्रिंग को लोअरकेस कैसे बनाएं?
स्ट्रिंग या उसे दर्शाने वाले वैरिएबल पर Python के बिल्ट-इन स्ट्रिंग मेथड lower() का उपयोग करके। उदाहरण के लिए, 'PythoN'.lower() 'python' लौटाएगा। यह मेथड कोई आर्ग्युमेंट नहीं लेता।
Python लिस्ट में सभी स्ट्रिंग्स को लोअरकेस कैसे करें?
लिस्ट कॉम्प्रिहेंशन का उपयोग करके। उदाहरण के लिए, [x.lower() for x in ['Python', 'R', 'SQL']] ['python', 'r', 'sql'] लौटाएगा। यहाँ एक महत्वपूर्ण बात यह है कि लिस्ट में सभी आइटम स्ट्रिंग प्रकार के होने चाहिए, अन्यथा प्रोग्राम त्रुटि देगा।
Python Series में सभी स्ट्रिंग्स को लोअरकेस कैसे करें?
Series पर भी लिस्ट कॉम्प्रिहेंशन का उपयोग करना संभव है ([x.lower() for x in pd.Series(['Python', 'R', 'SQL'])]), लेकिन यहाँ बेहतर तरीका Series.str.lower() मेथड का उपयोग करना है। उदाहरण के लिए, pd.Series(['Python', 'R', 'SQL']).str.lower() यह लौटाएगा:
0 python
1 r
2 sql
dtype: object
यहाँ एक महत्वपूर्ण बात यह है कि Series ऑब्जेक्ट के सभी मान स्ट्रिंग प्रकार के होने चाहिए और कोई मिसिंग वैल्यू स्वीकार्य नहीं है, अन्यथा प्रोग्राम त्रुटि देगा।
कैसे जाँचें कि Python स्ट्रिंग के सभी अक्षर लोअरकेस हैं?
स्ट्रिंग या उसे दर्शाने वाले वैरिएबल पर Python के बिल्ट-इन स्ट्रिंग मेथड islower() का उपयोग करके। उदाहरण के लिए, 'Python'.islower() False लौटाएगा क्योंकि स्ट्रिंग में एक अपरकेस अक्षर है, जबकि 'python'.islower() True लौटाएगा।
lower() और islower() मेथड किस प्रकार का डेटा लौटाते हैं?
lower() मेथड स्ट्रिंग लौटाता है जबकि islower() मेथड बूलियन लौटाता है।
क्या lower() और islower() मेथड संख्याओं पर काम करते हैं?
नहीं। इन मेथड्स को संख्याओं (जैसे, 1.lower()) या किसी अन्य डेटा टाइप जो स्ट्रिंग नहीं है, पर लागू करने से त्रुटि होगी।
यदि हम ऐसी स्ट्रिंग पर lower() या islower() मेथड लागू करें जिसमें अंक, स्पेस या विशेष कैरेक्टर्स हों, तो क्या होता है?
lower() मेथड ऐसे कैरेक्टर्स को जैसा है वैसा ही छोड़ देता है, islower() उन्हें नज़रअंदाज़ करता है। उदाहरण के लिए, 'Python1'.lower() 'python1' लौटाएगा, 'Python & R'.lower() 'python & r' लौटाएगा, और 'python & r'.islower() True लौटाएगा। यह इमोजी वाली स्ट्रिंग्स पर भी काम करता है: 'I ❤️ Python'.lower() 'i ❤️ python' लौटाएगा।
किसी स्ट्रिंग को अपरकेस बनाने के लिए lower() और islower() के विपरीत मेथड कौन से हैं?
upper() और isupper()। इन मेथड्स का सिंटैक्स और उपयोग lower() और islower() के समान है; ये भी केवल स्ट्रिंग डेटा टाइप पर काम करते हैं और स्ट्रिंग के अंदर के अंकों, स्पेस या विशेष कैरेक्टर्स को नज़रअंदाज़ करते हैं। Python Series की सभी स्ट्रिंग्स को अपरकेस बनाने के लिए Series.str.upper() मेथड का उपयोग करें।
.lower()एक बिल्ट-इन Python मेथड है, जिसका उपयोग मुख्य रूप से स्ट्रिंग हैंडलिंग के लिए किया जाता है।.lower()मेथड कोई आर्ग्युमेंट नहीं लेता और दी गई स्ट्रिंग के प्रत्येक अपरकेस अक्षर को लोअरकेस में बदलकर लोअरकेस्ड स्ट्रिंग लौटाता है। यदि दी गई स्ट्रिंग में कोई अपरकेस अक्षर नहीं है, तो यह मूल स्ट्रिंग ही लौटाता है।pandas के संदर्भ में,
.str.lower()एक विशेष फ़ंक्शन है जो pandas Series (जैसे DataFrame में कॉलम) पर कार्य करने के लिए बनाया गया है। यह Series के प्रत्येक स्ट्रिंग एलिमेंट पर.lower()की कार्यक्षमता लागू करता है, जिससे यह टेक्स्ट डेटा को मानकीकृत करने के लिए एक आवश्यक टूल बन जाता है।Python में केस कन्वर्ज़न का अभ्यास करें इस हैंड्स-ऑन एक्सरसाइज़ के साथ।