Перемещение столбца DataFrame Pandas на позицию (В начало и в конец)
Last updated
Last updated
Быть способным работать и манипулировать объектами DataFrame в Pandas является необходимым навыком для каждого, кто работает в области анализа данных или науки о данных. Поскольку Pandas становится вездесущим инструментом для аналитиков данных, важно уметь подготавливать DataFrame к презентации. В этом уроке **вы научитесь использовать Pandas для перемещения столбца DataFrame на конкретную позицию, например, в начало или конец
К окончанию этого урока вы научитесь следующему:
Как переместить столбец Pandas DataFrame на передний план
Как переместить столбец DataFrame Pandas в конец
Как переместить столбец DataFrame Pandas в определенную позицию
Оглавление
Для целей этого учебника давайте загрузим образцовый DataFrame в Pandas. DataFrame будет намеренно простым и будет использовать нумерованные столбцы, чтобы вы могли хорошо понять, как изменяется позиция столбцов.
В нашем DataFrame представлено четыре столбца, каждый из которых содержит значения соответствующих заголовков. Мы использовали списочное включение словаря, чтобы упростить создание словаря значений.
Рассмотрим, как переместить столбец DataFrame Pandas с помощью методов .pop()
и .insert()
:
pop() method
Извлечение столбца DataFrame Pandas
insert() method
Вставьте столбец Pandas DataFrame в определенную позицию
Метод .pop()
в Pandas принимает в качестве аргумента метку столбца. Этот метод удаляет столбец из DataFrame и возвращает его.
Метод .insert()
в Pandas принимает позицию, метку столбца и значения для вставки в качестве своих аргументов. Если это пока кажется непонятным, не беспокойтесь! Как только мы рассмотрим несколько примеров, все станет ясно.
Как переместить столбец DataFrame Pandas вперед?
Чтобы переместить столбец DataFrame Pandas в начало DataFrame, сначала извлеките столбец с помощью метода .pop()
, а затем вставьте его на позицию 0 с помощью метода .insert()
Давайте рассмотрим пример, где мы перемещаем третий столбец в начало DataFrame:
Давайте разберемся, как можно переместить столбец вперед:
Мы используем метод .pop()
для извлечения колонки 2 из DataFrame и присваиваем колонку col2
к Series.
Затем мы используем метод .insert()
для вставки Series на позицию 0 с меткой '2'
Мы можем упростить этот процесс до одной строки кода, объединив две операции вместе, как показано ниже:
В приведенном выше коде мы избегаем необходимости использовать метод .pop()
отдельно. Поскольку операция выполняется на месте, мы можем напрямую использовать этот метод при вызове метода.
В следующем разделе вы узнаете, как переместить столбец DataFrame Pandas на последнюю позицию.
Чтобы переместить столбец DataFrame в последнюю позицию DataFrame, мы можем воспользоваться процессом, очень похожим на описанный выше. Мы снова воспользуемся методами .pop()
и .insert()
При использовании метода .pop()
DataFrame действительно временно теряет один из столбцов. Поэтому нам необходимо быть внимательными к тому, куда мы вставляем столбец. К счастью, мы можем подсчитать количество столбцов и просто вставить его, используя функцию len()
Давайте посмотрим, как мы можем переместить первый столбец в конец DataFrame.
В приведенном выше коде мы сначала используем метод .pop()
для извлечения столбца. Затем мы вставляем его в последнюю позицию. Чтобы сделать этот код динамичным, мы используем функцию len()
для подсчета количества столбцов в DataFrame и вставляем его в эту позицию.
Мы можем упростить приведённый выше код еще раз, сводя его к одному вызову метода. Поскольку DataFrame временно теряет одну колонку, нам нужно вычесть 1 из его длины:
Учитывая увеличение сложности этого кода, использование более длинной версии может быть хорошей идеей.
В этом заключительном разделе мы рассмотрим, как мы можем переместить DataFrame в Pandas на определенную позицию. Этот метод работает так же, как и примеры выше, за исключением того, что мы указываем уникальную позицию.
Давайте рассмотрим, как мы можем переместить последнюю колонку DataFrame на вторую позицию. Поскольку Python использует индексацию с нуля, это будет позиция
В приведенном выше коде мы вставляем вытолкнутый последний столбец на вторую позицию. Это можно легко выполнить, объединив в один вызов метода.
Вы впервые научились использовать методы .pop()
и .insert()
для перемещения столбца Pandas в начало. Затем вы узнали, как повторить процесс, чтобы переместить столбец в конец DataFrame. Наконец, вы изучили, как переместить столбец на конкретную позицию.
Чтобы узнать больше о схожих темах, ознакомьтесь с приведенными ниже учебными материалами:
Изменение порядка столбцов Pandas: переиндексация Pandas и вставка Pandas
Как добавить/вставить строку в фрейм данных Pandas
Вставьте пустой столбец в фрейм данных Pandas
В этом учебнике вы научились перемещать столбец DataFrame Pandas на определенную позицию, например, в начало или конец. Умение перемещать столбцы улучшает читаемость ваших данных. Это может быть невероятно полезным, когда вы экспортируете данные, или