Как преобразовать столбец в список в Python?
В Python существует несколько способов преобразовать столбец в список. В этой статье рассмотрим различные методы, которые позволяют выполнить данную задачу.
Метод 1: Преобразование столбца с помощью метода tolist()
Метод tolist() является одним из самых простых способов преобразовать столбец в список в Python. Данный метод доступен в библиотеке pandas и позволяет преобразовать столбец DataFrame или Series в список.
import pandas as pd # Создаем DataFrame data = df = pd.DataFrame(data) # Преобразуем столбец в список list_from_column = df['Столбец A'].tolist() print(list_from_column)
[1, 2, 3, 4, 5]
Метод 2: Преобразование столбца с помощью метода values.tolist()
Еще одним способом преобразования столбца в список является использование метода values.tolist(). Данный метод доступен как для объектов DataFrame, так и для объектов Series.
import pandas as pd # Создаем DataFrame data = df = pd.DataFrame(data) # Преобразуем столбец в список list_from_column = df['Столбец A'].values.tolist() print(list_from_column)
[1, 2, 3, 4, 5]
Метод 3: Преобразование столбца с помощью метода append()
Если столбец представлен в виде списка, можно использовать метод append() для добавления элементов столбца в список.
# Создаем столбец column = [1, 2, 3, 4, 5] # Создаем пустой список list_from_column = [] # Добавляем элементы столбца в список for item in column: list_from_column.append(item) print(list_from_column)
[1, 2, 3, 4, 5]
Метод 4: Преобразование столбца с помощью генератора списков
Генераторы списков — это компактный и эффективный способ преобразования столбца в список в Python.
# Создаем столбец column = [1, 2, 3, 4, 5] # Преобразуем столбец в список с помощью генератора списков list_from_column = [item for item in column] print(list_from_column)
[1, 2, 3, 4, 5]
Заключение
В этой статье мы рассмотрели четыре различных метода преобразования столбца в список в Python. Каждый из этих методов имеет свои преимущества и может быть использован в зависимости от требований и предпочтений разработчика.
Pandas: как быстро преобразовать столбец в список
Вы можете использовать один из следующих методов для преобразования столбца в pandas DataFrame в список:
Способ 1: Используйте tolist()
df['my_column']. tolist ()
Способ 2: использовать список()
list(df['my_column'])
Оба метода вернут один и тот же результат.
В следующих примерах показано, как использовать каждый из этих методов со следующими пандами DataFrame:
import pandas as pd #create DataFrame df = pd.DataFrame() #view DataFrame print(df) team points assists 0 A 99 33 1 A 90 28 2 A 93 31 3 B 86 39 4 B 88 34 5 B 82 30
Способ 1: преобразовать столбец в список с помощью tolist()
В следующем коде показано, как использовать функцию tolist() для преобразования столбца «точки» в DataFrame в список:
#convert column to list my_list = df['points']. tolist () #view list print(my_list) [99, 90, 93, 86, 88, 82]
Мы можем подтвердить, что результатом является список, используя функцию type() :
#check data type type (my_list) list
Способ 2: преобразовать столбец в список с помощью list()
В следующем коде показано, как использовать функцию list() для преобразования столбца «точки» в DataFrame в список:
#convert column to list my_list = list(df['points']) #view list print(my_list) [99, 90, 93, 86, 88, 82]
Мы можем подтвердить, что результатом является список, используя функцию type() :
#check data type type (my_list) list
Обратите внимание, что оба метода возвращают одинаковые результаты.
Обратите внимание, что для очень больших фреймов данных метод tolist() работает быстрее всего.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные функции со столбцами кадра данных pandas:
PYTHON СТОЛБЕЦ В СПИСОК
Если вам нужно преобразовать столбец данных в Python и сохранить его в виде списка, то вы можете использовать следующий код:
my_column = [row[i] for row in my_table]
Здесь my_table — это таблица данных, а i — это индекс столбца, который вы хотите преобразовать в список. Код будет перебирать каждую строку в таблице и добавлять значение столбца в список my_column . Когда код выполняется, вы можете использовать новый список, например:
Этот код напечатает список значений из вашего столбца данных.
Как SQL и PYTHON используют в аналитике данных?
12 Списки и операции над ними Python
Pandas Базовый №4. Операции со столбцами DataFrame
29 Вложенные списки Python
Метод split и метод join Python
Pandas Базовый №3. Отбор строк и столбцов, Размерность, Импорт CSV
9 Cтроки и операции над ними Python
25 Цикл for. Обход списков и строк Python
BLGPG-D1170F788C2C-24-04-29-11
Новые материалы:
- Ide скачать python
- Python ввод пароля
- Python хешируемый объект
- Что такое path в python
- Python тип данных bytes
- Python производная numpy
- Максимальное значение int python
- Opencv в python часть 2
- Django переменные окружения
- Google библиотека python
Значение столбца в список Pandas
Pandas, таблица. У меня есть значения в столбце ‘industry_type’ Я хочу преобразовать их, чтобы они разбились на: [‘Banking’, ‘E-Commerce’, ‘Internet’, ‘Mobile’, ‘Telecommunications’] для каждого ‘organizationID’ соответственно, но не знаю как это сделать. Для начала я удалила запятые, использовав:
cols = ['industry_type'] for col in cols: df[col] = df[col].str.replace(',', ' ')
Получила следующее: Чтобы преобразовать в строку столбец ‘industry_type’ использовала:
list_indus = df['industry_type'].tolist()
Но в результате получаю: [‘Banking E-Commerce Internet Mobile Telecommunications’, ‘Advertising Internet Online Games Online Portals Social Media Marketing’. Только начинаю программировать и работать с pandas, подскажите пожалуйста, что нужно сделать, может цикл какой.
Отслеживать
задан 15 фев 2022 в 13:19
Olga Otinova Olga Otinova
1 1 1 бронзовый знак
Приведите пожалуйста в вопросе минимальный воспроизводимый пример входных данных (в виде текста / CSV / Python кода или ссылки на файл) и то что вы ожидаете получить на выходе. Также советую ознакомиться: Как наиболее эффективно задать вопрос, связанный с обработкой и/или анализом данных (например: по Pandas / Numpy / SciPy / SciKit Learn / SQL)
15 фев 2022 в 13:26
«подскажите пожалуйста, что нужно сделать» чтобы вам подсказали, для начала, отредактируйте свой вопрос, добавьте в него фрагмент ваших данных в воспроизводимом виде и пример того, что вы хотите увидеть в результате.
15 фев 2022 в 13:46
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Предположим, есть датафрейм:
moo org industry_type 0 11 1 a, b, c 1 22 2 foo 2 33 3 bar
res = df["industry_type"].str.split(",").explode().str.strip().to_frame().combine_first(df)
industry_type moo org 0 a 11 1 0 b 11 1 0 c 11 1 1 foo 22 2 2 bar 33 3
Отслеживать
ответ дан 15 фев 2022 в 14:10
26k 4 4 золотых знака 21 21 серебряный знак 36 36 бронзовых знаков
Не совсем понятно конечно, что вы хотите.
dict_of = df = pd.DataFrame(dict_of) >>> org_id org_name in_type 0 1 bank1 [Banking, E-Commerce, Internet, Mobile, Teleco. 1 2 bank2 [Banking, E-Commerce, Internet, Mobile, Teleco. 2 3 bank3 [Banking, E-Commerce, Internet, Mobile, Teleco.
Вариант 1
>>> print(df.explode('in_type')) org_id org_name in_type 0 1 bank1 Banking 0 1 bank1 E-Commerce 0 1 bank1 Internet 0 1 bank1 Mobile 0 1 bank1 Telecommunications 1 2 bank2 Banking 1 2 bank2 E-Commerce 1 2 bank2 Internet 1 2 bank2 Mobile 1 2 bank2 Telecommunications 2 3 bank3 Banking 2 3 bank3 E-Commerce 2 3 bank3 Internet 2 3 bank3 Mobile 2 3 bank3 Telecommunications
Вариант 2
>>> print(df.merge(df.in_type.apply(pd.Series), right_index=True, left_index=True)) org_id org_name 0 1 2 3 4 0 1 bank1 Banking E-Commerce Internet Mobile Telecommunications 1 2 bank2 Banking E-Commerce Internet Mobile Telecommunications 2 3 bank3 Banking E-Commerce Internet Mobile Telecommunications
А может и вообще совсем другое 🙂
UPD
df['in_type'] = df['in_type'].apply(lambda x: x.split(', ')) >>> df org_id org_name in_type 0 1 bank1 [Banking, E-Commerce, Internet, Mobile, Teleco. 1 2 bank2 [Banking, E-Commerce, Internet, Mobile, Teleco..