Как создать пары столбцов в Python?

#python #pandas

#питон #pandas

Вопрос:

У меня есть фрейм данных, как показано ниже. Я хочу создать такой столбец, как этот:

  d={
        'customer' :['abadia dos dourados','abadiania','abaete'],
        'seller':['montenegro','rio de janeiro','bauru']
    }
    
df=pd.DataFrame(d, columns=['customer','seller'])
 

Ожидаемый результат, подобный этому:

введите описание изображения здесь

Я использую этот код. Но это не похоже на то же самое.

 cols = ['customer','seller']
df['City_Pairs'] = df[cols].apply(lambda x:','.join([str(x) for x in zip(x.values)]), axis=1)
 

Мой вывод:

введите описание изображения здесь

Комментарии:

1. Похоже, ваш фрейм данных неполный. довольно много значений из ожидаемого результата отсутствуют в предоставленных входных данных

Ответ №1:

Это просто способ, которым вы создаете свою объединенную строку. Я использовал f-string

 df['City_Pairs'] = df.apply(lambda r: f"({r['customer']},{r['seller']})", axis=1)
 

выходной сигнал

             customer          seller                        City_Pairs
 abadia dos dourados      montenegro  (abadia dos dourados,montenegro)
           abadiania  rio de janeiro        (abadiania,rio de janeiro)
              abaete           bauru                    (abaete,bauru)