Как разделить столбец строки в Pandas на несколько столбцов


Вы можете использовать следующий базовый синтаксис, чтобы разделить строковый столбец в pandas DataFrame на несколько столбцов:

#split column A into two columns: column A and column B
df[['A', 'B']] = df['A']. str.split(',', 1 , expand= True )

В следующих примерах показано, как использовать этот синтаксис на практике.

Пример 1: Разделить столбец запятой

В следующем коде показано, как разделить столбец в кадре данных pandas на основе запятой на два отдельных столбца:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['Mavs, West', 'Spurs, West', 'Nets, East'],
 'points': [112, 104, 127]})

#view DataFrame
df

 team points
0 Mavs, West 112
1 Spurs, West 104
2 Nets, East 127

#split team column into two columns
df[['team', 'conference']] = df['team']. str.split(',', 1 , expand= True )

#view updated DataFrame
df

 team points conference
0 Mavs 112 West
1 Spurs 104 West
2 Nets 127 East

Обратите внимание, что вы также можете изменить порядок столбцов после выполнения разделения, если хотите:

#reorder columns
df = df[['team', 'conference', 'points']]

#view DataFrame
df

 team conference points
0 Mavs West 112
1 Spurs West 104
2 Nets East 127

Пример 2: Разделить столбец по другим разделителям

Мы можем использовать тот же синтаксис для разделения столбца другими разделителями.

Например, мы можем разделить столбец пробелом :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['Mavs West', 'Spurs West', 'Nets East'],
 'points': [112, 104, 127]})

#split team column into two columns
df[['team', 'conference']] = df['team']. str.split('', 1 , expand= True )

#view updated DataFrame
df

 team conference points
0 Mavs West 112
1 Spurs West 104
2 Nets East 127

Мы также можем разделить столбец косой чертой :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['Mavs/West', 'Spurs/West', 'Nets/East'],
 'points': [112, 104, 127]})

#split team column into two columns
df[['team', 'conference']] = df['team']. str.split('/', 1 , expand= True )

#view updated DataFrame
df

 team conference points
0 Mavs West 112
1 Spurs West 104
2 Nets East 127

Используя этот синтаксис, мы можем разделить столбец любым разделителем, который нам нужен.

Дополнительные ресурсы

Как добавить строки в Pandas DataFrame
Как добавить массив Numpy в фрейм данных Pandas
Как подсчитать количество строк в Pandas DataFrame

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.