हम पूरे डेटाफ़्रेम को फिर से लिखने के बिना डेटाफ़्रेम के कॉलम को स्थानांतरित करने के लिए पंडों में शिफ्ट () विधि का उपयोग कर सकते हैं। शिफ्ट () निम्नलिखित पैरामीटर लेता है
shift(self, periods=1, freq=None, axis=0, fill_value=None)
- अवधि शिफ्ट करने के लिए अवधियों की संख्या। यह एक ऋणात्मक संख्या भी ले सकता है।
- अक्ष यह एक बूलियन मान लेता है; 0 अगर आप इंडेक्स को शिफ्ट करना चाहते हैं और 1 अगर आप कॉलम शिफ्ट करना चाहते हैं
- fill_value यह लापता मान को बदल देगा।
आइए एक उदाहरण लें और देखें कि इस shift() का उपयोग कैसे करें विधि।
कदम
- एक द्वि-आयामी, आकार-परिवर्तनीय, संभावित रूप से विषम सारणीबद्ध डेटा बनाएं, df.
- इनपुट डेटाफ़्रेम प्रिंट करें, df.
- एक कॉलम चुनें और df["column_name]=df.column_name.shift() का उपयोग करके इसे शिफ्ट करें
- अपडेट किया गया डेटाफ़्रेम प्रिंट करें।
उदाहरण
import pandas as pd df = pd.DataFrame( dict( name=['John', 'Jacob', 'Tom', 'Tim', 'Ally'], marks=[89, 23, 100, 56, 90], subjects=["Math", "Physics", "Chemistry", "Biology", "English"] ) ) print "Input DataFrame is:\n", df df["name"] = df.name.shift(1) print "After shifting column name by 1:\n", df df["marks"] = df.marks.shift(2) print "After shifting column marks by 2:\n", df df["subjects"] = df.subjects.shift(-1) print "After shifting column subjects by -1:\n", df
आउटपुट
Input DataFrame is: name marks subjects 0 John 89 Math 1 Jacob 23 Physics 2 Tom 100 Chemistry 3 Tim 56 Biology 4 Ally 90 English After shifting column name by 1: name marks subjects 0 NaN 89 Math 1 John 23 Physics 2 Jacob 100 Chemistry 3 Tom 56 Biology 4 Tim 90 English After shifting column marks by 2: name marks subjects 0 NaN 100 Math 1 John 100 Physics 2 Jacob 89 Chemistry 3 Tom 23 Biology 4 Tim 100 English After shifting column subjects by -1: name marks subjects 0 NaN 100 Physics 1 John 100 Chemistry 2 Jacob 89 Biology 3 Tom 23 English 4 Tim 100 NaN