Как удалить индекс из созданного фрейма данных в Python?



Я создал фрейм данных df, объединив 2 списка с помощью следующей команды:



import pandas as pd
df=pd.DataFrame({'Name' : list1,'Probability' : list2})


Но я хотел бы удалить первый столбец (столбец индекса) и сделать столбец под названием Name первым столбцом. Я попробовал использовать del df['index'] и index_col=0. Но они не сработали. Я также проверил reset_index(), и это не то, что мне нужно. Я хотел бы полностью удалить весь столбец индекса из фрейма данных, который был создан таким образом (как упоминалось выше). Кто-нибудь, пожалуйста, помогите!
556   2  

2 ответов:

Вы можете использовать set_index, docs :

import pandas as pd

list1 = [1,2]
list2 = [2,5]
df=pd.DataFrame({'Name' : list1,'Probability' : list2})
print (df)
   Name  Probability
0     1            2
1     2            5

df.set_index('Name', inplace=True)
print (df)
      Probability
Name             
1               2
2               5

Если вам нужно также удалить индекс name:

df.set_index('Name', inplace=True)
#pandas 0.18.0 and higher
df = df.rename_axis(None)
#pandas bellow 0.18.0
#df.index.name = None
print (df)
   Probability
1            2
2            5

Если вы хотите сохранить фрейм данных в электронную таблицу для отчета.. можно отформатировать фрейм данных, чтобы исключить столбец индекса с помощью xlsxwriter.

writer = pd.ExcelWriter("Probability" + ".xlsx", engine='xlsxwriter')

df.to_excel(writer, sheet_name='Probability', startrow=3, startcol=0, index=False)

writer.save()

Index=False сохранит фрейм данных без столбца index.

Я использую это все время, когда строю отчеты из моих фреймов данных.

Comments

    Ничего не найдено.