समस्या विवरण
स्ट्रिंग Series से उन तत्वों को हटाएं जिनमें ठीक दो स्पेस (spaces) हों।
इनपुट Series
0 This is pandas 1 python script 2 pandas series dtype: object
अपेक्षित आउटपुट
1 python script 2 pandas series dtype: object
समाधान 1: Regex और filter (सुझावित)
import pandas as pd import re l = ["This is pandas","python script","pandas series"] data = pd.Series(l) # ठीक दो स्पेस न रखने वाले तत्व रखें result = pd.Series(filter(lambda x: len(re.findall(r" ", x)) != 2, data)) print(data[data.isin(result)])
समाधान 2: लूप और pop() (सावधानी: इंडेक्स बदलता है)
import pandas as pd
l = ["This is pandas","python script","pandas Series"]
data = pd.Series(l)
# कॉपी पर इटरेट करें क्योंकि pop() इंडेक्स बदलता है
for idx, val in data.copy().items():
if val.count(' ') == 2:
data.pop(idx)
print(data)
आउटपुट
1 python script 2 pandas series dtype: object
चेतावनी: लूप के दौरान Series को संशोधित करना (pop) जोखिम भरा है। पहली विधि (filter) सुरक्षित और पठनीय है।
पैंडास वेक्टराइज़्ड तरीका:
mask = data.str.count(' ') != 2
print(data[mask])