Неправильная конкатенация столбцов в датафрейме
Есть код:
import pandas as pd
titles = ['Level', 'Hitpoints', 'Damage', 'Damage per second']
y = 1
x = 0
res = pd.DataFrame()
for x in range(len(titles)):
if x==0:
data = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13']
if x==1:
data = ['90', '99', '108', '119', '131', '144', '158', '173', '190', '209', '230', '252', '278']
if x==2:
data = ['40', '44', '48', '53', '58', '64', '70', '77', '84', '93', '102', '112', '123']
if x==3:
data = ['40\n', '44\n', '48\n', '53\n', '58\n', '64\n', '70\n', '77\n', '84\n', '93\n', '102\n', '112\n', '123\n']
for y in range(len(data)-1):
res = res.append(pd.DataFrame([[data[y]]], columns = [titles[x]]), ignore_index=True)
res.to_excel('Minions' + '_unstable_ch_test' + '.xlsx')
Данные выводятся так:
А хотелось бы так:
Заранее Спасибо
Ответы (1 шт):
Автор решения: strawdog
→ Ссылка
Вы чего-то нагородили у себя в коде, ей-богу. И excel здесь ни при чем, потому что у вас результирующий датафрейм уже "неправильный".
вместо
res = res.append(pd.DataFrame([[data[y]]], columns = [titles[x]]), ignore_index=True)
сделайте
res[titles[x]] = data
и вынесите
res.to_excel('Minions' + '_unstable_ch_test' + '.xlsx')
за пределы ваших циклов, чтобы зря файл по сто раз не писать. и все.

