Python | Difference between Pandas.copy() and copying through variables
Last Updated :
17 Sep, 2018
Pandas .copy() method is used to create a copy of a Pandas object. Variables are also used to generate copy of an object but variables are just pointer to an object and any change in new data will also change the previous data.
The following examples will show the difference between copying through variables and Pandas.copy() method.
Example #1: Copying through variables
In this example, a sample Pandas series is made and copied in a new variable. After that, some changes are made in the new data and compared with the old data.
import pandas as pd
data = pd.Series([ 'a' , 'b' , 'c' , 'd' ])
new = data
new[ 1 ] = 'Changed value'
print (new)
print (data)
|
Output:
As shown in the output image, the changes made in new data are also reflected in the old data since the new variable was just a pointer to old one.
Example #2: Using Pandas.copy() method
In this example, pandas.copy() method is used to copy a data and some changes are made in the new data. The changes are then compared to old data.
import pandas as pd
data = pd.Series([ 'a' , 'b' , 'c' , 'd' ])
new = data.copy()
new[ 1 ] = 'Changed value'
print (new)
print (data)
|
Output:
As shown in the output image, the changes in new data are independent and didn’t change anything in old one.