أرغب في إنشاء عمود B جديد عن طريق تطبيق دالة على كل صف من العمود A ، وهو كائن نوع البيانات ومليء ببيانات القائمة ، في dataframe DF دون تغيير قيم العمود A.
def f(i):
if(type(i) is list):
for j in range(0,len(i)):
i[j]+=1
else:
i+=1
return i
df = pd.DataFrame([1,1],columns=['A'])
df['A']=df['A'].astype(object)
df.at[[0,1],'A']=[1,2]
df['B']=df['A'].apply(lambda x: f(x))
لسوء الحظ ، يحدث ما يلي: df ['B'] = function (df ['A']) ، ولكن أيضًا df ['A'] = function (df ['A']).
يرجى ملاحظة: df ['A'] قائمة ، dtype هو كائن (س) .
للتوضيح: أريد أن يبقى العمود "أ" أصليًا. يمكن لأي شخص أن يخبرني عن كيفية تحقيق ذلك؟