Разбить список значений на отдельные строки

Таблица 1

Как преобразовать данные из первой таблицы во вторую? Сделать нужно через Pandas

Таблица 2

for i in range(len(robot_db['id'])):    
    buffer = [x for x in robot_db['id'][i]]    
    for j in range(len(robot_db['robot'][i])):
        robot_db['final'] = robot_db['id'][i] + '*' + robot_db['Name'][i]
        + '*' + robot_db['latitude'][i] + '*' + robot_db['longitude'][i]
        + '*' + buffer[j] + '/n'

Ответы (1 шт):

Автор решения: Dmitri Chubarov

На англоязычном сайте есть решение подобной задачи.

Идея - использовать метод explode()

robodb = pd.DataFrame({'id': [2,2,4,4], 
                       'robot':['A,B,C','D,E,F','J,I,K','L,M,N']})
robodb['robot'] = robodb.robot.str.split(',')
robodb.explode('robot').reset_index(drop=True))

В результате из датафрейма

   id  robot
0   2  A,B,C
1   2  D,E,F
2   4  J,I,K
3   4  L,M,N

получается

   id robot
0   2     A
1   2     B
2   2     C
3   2     D
4   2     E
5   2     F
6   4     J
 ...
→ Ссылка