python - تعيين قيمة لخلية معينة في pandas DataFrame باستخدام الفهرس




4 Answers

تحديث: سيتم إيقاف قيمة .set_value. .iat / .at بدائل جيدة ، للأسف الباندا يوفر القليل من الوثائق

أسرع طريقة للقيام بذلك هي استخدام set_value . هذه الطريقة هي أسرع 100 مرة من طريقة .ix . فمثلا:

df.set_value('C', 'x', 10)

python pandas


لقد قمت بإنشاء pandas DataFrame

df=DataFrame(index=['A','B','C'], columns=['x','y'])

وحصلت على هذا

    x    y
A  NaN  NaN
B  NaN  NaN
C  NaN  NaN


ثم أريد تعيين قيمة لخلية معينة ، على سبيل المثال للصف 'C' والعمود 'x'. كنت أتوقع الحصول على هذه النتيجة:

    x    y
A  NaN  NaN
B  NaN  NaN
C  10  NaN

بهذا الرمز:

df.xs('C')['x']=10

لكن محتويات df لم تتغير. مرة أخرى فقط نان في dataframe.

أي اقتراحات؟







هذا هو الشيء الوحيد الذي يعمل بالنسبة لي!

df.loc['C', 'x'] = 10

تعرف على المزيد حول .loc here .




إذا كنت ترغب في تغيير القيم لا للصف بأكمله ، ولكن فقط لبعض الأعمدة:

x = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
x.iloc[1] = dict(A=10, B=-10)



Related