Метод копирования DataFrame в Pandas

PythonPythonBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы научимся использовать метод copy() в классе DataFrame библиотеки pandas. Метод copy() позволяет создать копию объекта DataFrame без изменения исходного DataFrame. Мы рассмотрим синтаксис и параметры метода copy() и приведем примеры его использования.

Советы по работе с ВМ

После запуска виртуальной машины кликните в верхнем левом углу, чтобы переключиться на вкладку Notebook и приступить к практике в Jupyter Notebook.

Иногда может потребоваться подождать несколько секунд, пока Jupyter Notebook полностью загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы столкнетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Создание DataFrame

Во - первых, нам нужно импортировать библиотеку pandas и создать объект DataFrame.

import pandas as pd

df = pd.DataFrame({'A': ['a', 'b', 'c'], 'B': ['d', 'e', 'f']})
print(df)

Результат:

   A  B
0  a  d
1  b  e
2  c  f

Копирование DataFrame с использованием метода copy()

Далее мы можем использовать метод copy() для создания копии объекта DataFrame.

df1 = df.copy()
print(df1)

Результат:

   A  B
0  a  d
1  b  e
2  c  f

Изменение скопированного DataFrame

Мы можем изменить скопированный DataFrame, не влияя на исходный.

df1['A'] = df1['A'].replace(['b'], 'x')
print(df1)
print(df)

Результат:

   A  B
0  a  d
1  x  e
2  c  f

   A  B
0  a  d
1  b  e
2  c  f

Поверхностная копия с использованием copy() с deep=False

По умолчанию метод copy() выполняет глубокую копию, создавая новый объект с копией данных и индексов. Однако, мы также можем создать поверхностную копию, используя параметр deep=False.

df1 = df.copy(deep=False)
df1['A'] = df1['A'].replace(['b'], 'x')
print(df1)
print(df)

Результат:

   A  B
0  a  d
1  x  e
2  c  f

   A  B
0  a  d
1  x  e
2  c  f

Резюме

В этом практическом занятии мы узнали, как использовать метод copy() в классе DataFrame библиотеки pandas. Метод copy() позволяет создать копию объекта DataFrame без изменения исходного DataFrame. Мы изучили, как создать копию с использованием метода copy() и как изменить скопированный DataFrame. Кроме того, мы узнали о параметре deep, который контролирует, создается глубокая или поверхностная копия. По умолчанию создается глубокая копия, но поверхностная копия может быть создана путем установки deep=False. Изучив метод copy(), мы можем манипулировать объектами DataFrame без влияния на исходные данные.