webentwicklung-frage-antwort-db.com.de

So entfernen Sie den Index aus einem erstellten Dataframe in Python

Ich habe ein Dataframe df erstellt, indem ich zwei Listen mit dem folgenden Befehl zusammenführte: 

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

Ich möchte jedoch die erste Spalte (die Indexspalte) entfernen und die Spalte Name zur ersten Spalte machen. Ich habe versucht, del df['index'] und index_col=0 zu verwenden. Aber sie haben nicht funktioniert. Ich habe auch reset_index() überprüft und das ist nicht was ich brauche. Ich möchte die gesamte Indexspalte vollständig aus einem so erstellten Dataframe entfernen (wie oben erwähnt). Jemand bitte helfen!

8
controlfreak

Sie können set_index , docs verwenden:

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

Wenn Sie auch Index name entfernen müssen:

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
15
jezrael

Wenn Sie Ihren Datenrahmen in einem Arbeitsblatt für einen Bericht speichern möchten, können Sie den Datenrahmen so formatieren, dass er die Indexspalte mit xlsxwriter entfernt.

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

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

writer.save()

index = False speichert dann Ihren Datenrahmen ohne die Indexspalte.

Ich verwende dies ständig, wenn Sie Berichte aus meinen Datenrahmen erstellen.

0
D. Whitt