Как удалить столбцы в Pandas (4 примера)
Вы можете использовать функцию drop() , чтобы удалить один или несколько столбцов из кадра данных pandas:
#drop one column by name df.drop('column_name', axis= 1 , inplace= True ) #drop multiple columns by name df.drop(['column_name1', 'column_name2'], axis= 1 , inplace= True ) #drop one column by index df.drop (df.columns [[0]], axis= 1 , inplace= True ) #drop multiple columns by index df.drop (df.columns[[0,2,5]], axis= 1 , inplace= True )
Обратите внимание на следующее:
- Аргумент оси указывает, следует ли удалить строки (0) или столбцы (1).
- Аргумент inplace указывает, что столбцы должны быть удалены без переназначения DataFrame.
В следующих примерах показано, как использовать эту функцию на практике со следующими пандами DataFrame:
import pandas as pd #create DataFrame df = pd.DataFrame() #view DataFrame df A B C 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
Пример 1. Удаление одного столбца по имени
В следующем коде показано, как удалить один столбец из DataFrame по имени:
#drop column named 'B' from DataFrame df.drop('B', axis= 1 , inplace= True ) #view DataFrame df A C 0 25 11 1 12 8 2 15 10 3 14 6 4 19 6 5 23 5 6 25 9 7 29 12
Пример 2. Удаление нескольких столбцов по имени
В следующем коде показано, как удалить несколько столбцов по имени:
#drop columns 'A' and 'C' from DataFrame df.drop(['A', 'C'], axis= 1 , inplace= True ) #view DataFrame df B 0 5 1 7 2 7 3 9 4 12 5 9 6 9 7 4
Пример 3. Удаление одного столбца по индексу
В следующем коде показано, как удалить один столбец по индексу:
#drop first column from DataFrame df.drop (df.columns [[0]], axis= 1 , inplace= True ) #view DataFrame df B C 0 5 11 1 7 8 2 7 10 3 9 6 4 12 6 5 9 5 6 9 9 7 4 12
Пример 4. Удаление нескольких столбцов по индексу
В следующем коде показано, как удалить несколько столбцов по индексу:
#drop multiple columns from DataFrame df.drop (df.columns [[0, 1]], axis= 1 , inplace= True ) #view DataFrame df C 0 11 1 8 2 10 3 6 4 6 5 5 6 9 7 12
Удаление столбца из DataFrame в Pandas
Когда работают с данными в Python, часто используется библиотека Pandas. Она позволяет удобно манипулировать данными с помощью структур данных, таких как DataFrame.
Иногда возникает необходимость удалить столбец из DataFrame. Это можно сделать разными способами. Один из них — использовать ключевое слово del следующим образом:
del df['column_name']
Здесь df — это DataFrame, а ‘column_name’ — имя удаляемого столбца.
Однако, порой возникает вопрос: почему нельзя использовать следующий синтаксис для удаления столбца?
del df.column_name
Ведь для доступа к содержимому столбца мы можем использовать именно такой синтаксис: df.column_name .
Ответ кроется в том, как Python обрабатывает операцию удаления del . Когда мы пишем del df[‘column_name’] , Python ищет в df элемент с ключом ‘column_name’ и удаляет его. В этом случае, df — это словарь (или похожая на словарь структура), а ‘column_name’ — это ключ в этом словаре.
С другой стороны, когда мы пишем del df.column_name , Python пытается удалить атрибут column_name из объекта df . В этом случае, df — это объект, а column_name — это атрибут этого объекта.
Но столбцы DataFrame в Pandas не являются атрибутами объекта DataFrame, они являются ключами в словаре, который представляет DataFrame. Поэтому del df.column_name вызывает ошибку.
Вывод: для удаления столбца из DataFrame в Pandas используйте синтаксис del df[‘column_name’] , а не del df.column_name .
Как удалить столбец матрицы python: простое руководство с примерами и объяснениями
Чтобы удалить столбец матрицы в Python, вы можете использовать библиотеку NumPy и функцию delete(). Вот пример кода:
import numpy as np matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) new_matrix = np.delete(matrix, 1, axis=1) print(new_matrix)
В этом примере мы создаем матрицу с помощью функции array() из библиотеки NumPy. Затем мы используем функцию delete() и передаем ей матрицу, индекс столбца, который желаем удалить, и параметр axis=1 для указания, что мы хотим удалить столбец. Результат сохраняется в переменной new_matrix. Затем мы выводим новую матрицу. Надеюсь, это помогает! Если у вас есть еще вопросы, не стесняйтесь спрашивать.
Детальный ответ
Как удалить столбец матрицы Python
Удаление столбца из матрицы в Python может быть достигнуто с использованием нескольких методов, таких как срезы и использование библиотеки NumPy. Давайте рассмотрим каждый из них подробнее.
1. Использование срезов
Срезы в Python очень эффективны при работе с матрицами. Чтобы удалить столбец из матрицы, мы можем взять срезы от начала и конца каждой строки матрицы, и объединить их, исключив столбец, который мы хотим удалить.
def delete_column(matrix, column_index): # Проходим по каждой строке матрицы for row in matrix: # Удаляем элемент из строки по индексу столбца del row[column_index] return matrix # Пример использования matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] column_index = 1 result = delete_column(matrix, column_index) print(result)
В этом примере функция delete_column принимает матрицу и индекс столбца, который нужно удалить. Затем мы проходим по каждой строке матрицы и удаляем элемент по указанному индексу столбца. Функция возвращает измененную матрицу без указанного столбца.
2. Использование библиотеки NumPy
Если у вас есть большие матрицы или вы часто работаете с матричными операциями, использование библиотеки NumPy может быть более эффективным решением. Библиотека NumPy предоставляет множество функций для работы с матрицами, включая удаление столбцов.
import numpy as np matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) column_index = 1 result = np.delete(matrix, column_index, axis=1) print(result)
В этом примере мы используем функцию np.delete из библиотеки NumPy, чтобы удалить столбец по указанному индексу. Мы передаем матрицу, индекс столбца и ось удаления (axis=1 для столбцов). Функция возвращает измененную матрицу без указанного столбца. Теперь у вас есть два эффективных способа удаления столбца из матрицы в Python. Выберите метод, который лучше подходит для ваших потребностей и задач.
Добавление и удаление столбца в DataFrame Pandas
Чтобы добавить новый столбец к существующему в DataFrame Pandas, назначьте новые значения столбца, проиндексированному с использованием нового имени столбца.
В этом руководстве мы узнаем, как добавить столбец в DataFrame с помощью примеров программ, которые будут очень подробными и иллюстративными.
Синтаксис
Синтаксис для добавления столбца в DataFrame:
mydataframe['new_column_name'] = column_values
Где, mydataframe – это DataFrame, в который вы хотите добавить новый столбец с меткой new_column_name. Вы можете указать все значения столбца в виде списка или одно значение, которое будет использоваться по умолчанию для всех строк.
Пример 1
В этом примере мы создадим DataFrame df_marks и добавим новый столбец с именем geometry.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #add column df_marks['geometry'] = [81, 92, 67, 76] print('\n\nDataFrame after adding "geometry" column\n--------------') print(df_marks)
Original DataFrame -------------- names physics chemistry algebra 0 Somu 68 84 78 1 Kiku 74 56 88 2 Amol 77 73 82 3 Lini 78 69 87 DataFrame after adding "geometry" column -------------- names physics chemistry algebra geometry 0 Somu 68 84 78 81 1 Kiku 74 56 88 92 2 Amol 77 73 82 67 3 Lini 78 69 87 76
Столбец добавляется к DataFrame с указанным списком в качестве значений столбца.
Длина списка, который вы предоставляете для нового столбца, должна равняться количеству строк в DataFrame. Если это условие не выполняется, вы получите сообщение об ошибке, подобное приведенному ниже.
ValueError: Length of values does not match length of index
Пример 2: со значением по умолчанию
В этом примере мы создадим df_marks и добавим новый столбец с именем geometry со значением по умолчанию для каждой строки в DataFrame.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #add column df_marks['geometry'] = 65 print('\n\nDataFrame after adding "geometry" column\n--------------') print(df_marks)
Original DataFrame -------------- names physics chemistry algebra 0 Somu 68 84 78 1 Kiku 74 56 88 2 Amol 77 73 82 3 Lini 78 69 87 DataFrame after adding "geometry" column -------------- names physics chemistry algebra geometry 0 Somu 68 84 78 65 1 Kiku 74 56 88 65 2 Amol 77 73 82 65 3 Lini 78 69 87 65
Столбец добавляется в DataFrame с указанным значением в качестве значения столбца по умолчанию.
Как у далить столбец?
Функция Pandas DataFrame.pop() используется для удаления столбца из DataFrame.
В этом руководстве мы рассмотрим примеры, чтобы узнать, как использовать pop() для удаления столбца из Pandas DataFrame.
Пример 1
В этом примере мы удалили определенный столбец, используя его имя с помощью pop(). Функция pandas pop() обновляет исходный dataframe. Данные в удаленном столбце потеряны.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #delete column df_marks.pop('algebra') print('\n\nDataFrame after deleting column\n--------------') print(df_marks)
Пример 2
В этом примере мы попытаемся удалить столбец, которого нет в DataFrame.
Когда вы пытаетесь удалить несуществующий столбец с помощью pop(), функция выдает ошибку KeyError.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #delete column that is not present df_marks.pop('geometry') print('\n\nDataFrame after deleting column\n--------------') print(df_marks)

В этом руководстве на примерах Python мы узнали, как удалить столбец из DataFrame с помощью pop() с помощью хорошо подробных примеров программ.
Как удалить столбцы?
Чтобы удалить или удалить только один столбец из Pandas DataFrame, вы можете использовать ключевое слово del, функцию pop() или функцию drop() в кадре данных.
Чтобы удалить несколько столбцов из DataFrame Pandas, используйте функцию drop().
Пример 1: с помощью ключевого слова del
В этом примере мы создадим DataFrame, а затем удалим указанный столбец с помощью ключевого слова del. Столбец выбирается для удаления с помощью метки столбца.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #delete a column del df_marks['chemistry'] print('\n\nDataFrame after deleting column\n--------------') print(df_marks)
Original DataFrame -------------- names physics chemistry algebra 0 Somu 68 84 78 1 Kiku 74 56 88 2 Amol 77 73 82 3 Lini 78 69 87 DataFrame after deleting column -------------- names physics algebra 0 Somu 68 78 1 Kiku 74 88 2 Amol 77 82 3 Lini 78 87
Мы удалили столбец химии из DataFrame.
Пример 2: с помощью функции pop()
В этом примере мы создадим DataFrame, а затем будем использовать функцию pop() для удаления определенного столбца.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #delete column df_marks.pop('chemistry') print('\n\nDataFrame after deleting column\n--------------') print(df_marks)
Original DataFrame -------------- names physics chemistry algebra 0 Somu 68 84 78 1 Kiku 74 56 88 2 Amol 77 73 82 3 Lini 78 69 87 DataFrame after deleting column -------------- names physics algebra 0 Somu 68 78 1 Kiku 74 88 2 Amol 77 82 3 Lini 78 87
Мы удалили столбец химии из DataFrame.
Пример 3: с помощью функции drop()
В этом примере мы будем использовать функцию drop() для удаления определенного столбца. Мы используем метку столбца для удаления.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #delete column df_marks = df_marks.drop(['chemistry'], axis=1) print('\n\nDataFrame after deleting column\n--------------') print(df_marks)

Пример 4: с помощью функции drop()
В этом примере мы будем использовать функцию drop() для удаления нескольких столбцов. Мы используем массив меток столбцов для выбора столбцов для удаления.
import pandas as pd mydictionary = #create dataframe df_marks = pd.DataFrame(mydictionary) print('Original DataFrame\n--------------') print(df_marks) #delete columns df_marks = df_marks.drop(['algebra', 'chemistry'], axis=1) print('\n\nDataFrame after deleting column\n--------------') print(df_marks)

Мы узнали, как удалить столбец из Pandas DataFrame, используя ключевое слово del, метод pop() и метод drop(), с помощью хорошо подробных примеров Python.
