समस्या विवरण
Series के प्रत्येक तत्व x के लिए x^x (x की घात x) की गणना करें।
इनपुट Series
0 1 1 2 2 3 3 4 dtype: int64
अपेक्षित आउटपुट
0 1 1 4 2 27 3 256 dtype: int64
समाधान 1: transform() और lambda (सुझावित)
import pandas as pd l = [1,2,3,4] data = pd.Series(l) result = data.transform(lambda x: x**x) print(result)
समाधान 2: math.pow और लूप
import pandas as pd
import math as m
l = [1,2,3,4]
data = pd.Series(l)
ls = []
for i, j in data.items():
ls.append(m.pow(j, j))
result = pd.Series(ls)
print(result)
आउटपुट
समाधान 1 (int): 0 1 1 4 2 27 3 256 dtype: int64 समाधान 2 (float): 0 1.0 1 4.0 2 27.0 3 256.0 dtype: float64
नोट: transform मूल डेटा प्रकार बनाए रखता है, जबकि math.pow हमेशा फ्लोट लौटाता है।