Это не совсем правильно, плюс завершающий .str
не имеет смысла. Поскольку split
с expand
возвращает DataFrame, это проще:
df[['A', 'B']] = df['AB'].str.split(' ', n=1, expand=True)
Ваш существующий метод без expand
возвращает одну серию со списком столбцов. Я не уверен, какая версия pandas использовалась для работы с вашим кодом, но AFAIK вам нужно сделать некоторые настройки, чтобы сегодня работать с pandas (> = 1.0). Назначение таким способом утомительно, но все же возможно.
s = df['AB'].str.split(' ', n=1)
df['A'], df['B'] = s.str[0], s.str[1]
Я предпочитаю решение expand
, так как оно короче.