2016-05-02 3 views
5

है, तो मैं NaNs के साथ कुछ रिकॉर्ड से छुटकारा पाना चाहता हूं। यह पूरी तरह से काम करता है:पांडा सभी वस्तुओं को NaN के साथ एक पंक्ति में प्रतिस्थापित करते हैं यदि एक मान NaN

df.dropna(axis=0, how='any',inplace=True) 

हालांकि, यह मेरे डेटाफ्रेम के आकार को बदलता है, और सूचकांक अब समान रूप से दूरी नहीं है। इसलिए, मैं इन पंक्तियों में np.nan के साथ सभी आइटमों को प्रतिस्थापित करना चाहता हूं। क्या ऐसा करने के लिए एक सरल तरीका है?

मैं dropna के बाद डेटा फ्रेम को दोबारा बदलने के बारे में सोच रहा था, लेकिन यह केवल निर्धारित अंतराल के साथ काम करता प्रतीत होता है, जबकि मैं मूल सूचकांक का उपयोग करता हूं। एक और दृष्टिकोण डेटाफ्रेम पर iterrows के साथ लूप करना होगा, लेकिन यह भी बोझिल लगता है।

+0

यदि समस्या आपकी अनुक्रमणिका का परिवर्तन है, तो आपको बस इसे रीसेट करना होगा? डीएफ = df.reset_index (ड्रॉप = सही) – ysearka

उत्तर

2

नीचे दिया गया आदेश सभी पंक्तियों को नैन के बराबर किसी भी मान के साथ चुनता है, और उन पंक्तियों के लिए NaNs निर्दिष्ट करता है।

df.loc[df.isnull().any(axis=1), :] = np.nan 
संबंधित मुद्दे