समस्या विवरण
दिए गए Series के प्रत्येक फ्लोटिंग-पॉइंट नंबर को निकटतम पूर्णांक में राउंड करें।
इनपुट Series
0 1.3 1 2.6 2 3.9 3 4.8 4 5.6 dtype: float64
अपेक्षित आउटपुट
0 1.0 1 3.0 2 4.0 3 5.0 4 6.0 dtype: float64
समाधान 1: बिल्ट-इन round() विधि (सुझावित)
import pandas as pd
l = [1.3, 2.6, 3.9, 4.8, 5.6]
data = pd.Series(l)
print("मूल Series:")
print(data)
rounded = data.round()
print("\nराउंड किया गया Series:")
print(rounded)
समाधान 2: लूप और round() फ़ंक्शन का उपयोग
import pandas as pd
l = [1.3, 2.6, 3.9, 4.8, 5.6]
data = pd.Series(l)
ls = []
for i, j in data.items():
ls.append(round(j))
result = pd.Series(ls)
print(result)
आउटपुट (दोनों विधियों के लिए)
0 1.0 1 3.0 2 4.0 3 5.0 4 6.0 dtype: float64
अंतर: विधि 1 फ्लोट परिणाम देती है (1.0, 3.0...), विधि 2 पूर्णांक दे सकती है (1, 3, 4...) डेटा प्रकार के आधार पर। पैंडास की round() विधि अधिक कुशल और पठनीय है।