#python #pandas #concatenation
Вопрос:
Есть ли способ объединить информацию двух рядов данных в панд? Не добавляйте и не объединяйте информацию двух фреймов данных, а фактически объединяйте содержимое каждого ряда данных в новый ряд данных.
Пример:
ColumnA (Item type) Row 2 = 1 (float64)
ColumnB (Item number) Row 2 = 1 (float64)
ColumnC (Registration Date) Row 2 = 04/07/2018 (43285) (datetime64[ns])
В Excel я бы объединил строки в столбце A
B
, C
и объединил число в каждом столбце , используя формулу =concat(A2, B2, C2)
Результат будет 1143285
D2
, например, в другой ячейке.
Есть ли способ для меня сделать это в Панд? Я мог найти только способы объединения, объединения или добавления рядов во фрейме данных, но не в самом ряду.
Ответ №1:
Вы можете использовать это
df['D'] = df.apply(lambda row : str(row['A'])
str(row['B']) str(row['C']), axis = 1)
Следуя вашему примеру, это было бы
import pandas as pd
d = {'A': [1],'B':[1],'C':[43285]}
df = pd.DataFrame(data=d)
df['D'] = df.apply(lambda row : str(row['A'])
str(row['B']) str(row['C']), axis = 1)
Выход:
A B C D
0 1 1 43285 1143285