Разбить список значений на отдельные строки
Как преобразовать данные из первой таблицы во вторую? Сделать нужно через Pandas
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
...

