का उपयोग किए बिना पांडा डेटाफ्रेम में किसी चयनित सेल के लिए मूल्य बदलें, यह this question पर एक समान प्रश्न है, लेकिन एक महत्वपूर्ण अंतर के साथ: मैं उस डेटा का चयन कर रहा हूं जिसे मैं अपनी अनुक्रमणिका से नहीं बदलना चाहता हूं लेकिन कुछ मानदंडों से।इंडेक्स
मापदंड मैं एक ही पंक्ति लौट लागू होते हैं, मैं एक आसान तरीका में उस पंक्ति में एक निश्चित स्तंभ का मान सेट करने में सक्षम हो उम्मीद थी, लेकिन मेरा पहला प्रयास काम नहीं करता:
>>> d = pd.DataFrame({'year':[2008,2008,2008,2008,2009,2009,2009,2009],
... 'flavour':['strawberry','strawberry','banana','banana',
... 'strawberry','strawberry','banana','banana'],
... 'day':['sat','sun','sat','sun','sat','sun','sat','sun'],
... 'sales':[10,12,22,23,11,13,23,24]})
>>> d
day flavour sales year
0 sat strawberry 10 2008
1 sun strawberry 12 2008
2 sat banana 22 2008
3 sun banana 23 2008
4 sat strawberry 11 2009
5 sun strawberry 13 2009
6 sat banana 23 2009
7 sun banana 24 2009
>>> d[d.sales==24]
day flavour sales year
7 sun banana 24 2009
>>> d[d.sales==24].sales = 100
>>> d
day flavour sales year
0 sat strawberry 10 2008
1 sun strawberry 12 2008
2 sat banana 22 2008
3 sun banana 23 2008
4 sat strawberry 11 2009
5 sun strawberry 13 2009
6 sat banana 23 2009
7 sun banana 24 2009
तो 200 9 की रविवार की बिक्री की बिक्री 100 की बजाय, कुछ भी नहीं होता! ऐसा करने का सबसे अच्छा तरीका क्या है? आदर्श रूप से समाधान को पंक्ति संख्या का उपयोग करना चाहिए, क्योंकि आप आमतौर पर पहले से ही नहीं जानते हैं!
अग्रिम में बहुत धन्यवाद, रोब
हाँ! समाधान 1. काम किया। काउंटर-अंतर्ज्ञानी का क्रमबद्ध करें जो यह काम करता है: 'd.sales [d.sales == 24] = 100' लेकिन यह नहीं करता:' d [d.sales == 24] .sales = 100'। वे मेरे लिए समान होने के लिए (कार्यात्मक रूप से) दिखते हैं। ठीक है। धन्यवाद @ वाइटिंगकुओ। – LondonRob
डी [d.sales == 24] एक नई वस्तु उत्पन्न करता है। – waitingkuo
फिर से। @ प्रतीक्षाकुओ की टिप्पणी: क्या अपेक्षित व्यवहार, पांडा लोग हैं? निश्चित रूप से अंतर्ज्ञानी नहीं है कि 'd [d.sales == 24] 'मूल' डेटाफ्रेम 'की एक प्रति उत्पन्न करनी चाहिए। असल में, मैं कहूंगा कि प्रत्येक ऑब्जेक्ट मूल के संदर्भ में होना चाहिए (जिसमें एक पंक्ति का चयन करना शामिल है, जो सही ढंग से, एक पांडों 'श्रृंखला' में 'ध्वस्त' होता है) जब तक उपयोगकर्ता द्वारा स्पष्ट रूप से अनुरोध नहीं किया जाता है (किसी प्रकार की प्रतिलिपि के माध्यम से = TRUE')। विचार? – LondonRob