menambahkan baris di bagian atas dalam dataframe pandas

Di bawah ini adalah dataframe saya

import pandas as pd
df = pd.DataFrame({'name': ['jon','sam','jane','bob'],
           'age': [30,25,18,26],
           'sex':['male','male','female','male']})

   age  name     sex
0   30   jon    male
1   25   sam    male
2   18  jane  female
3   26   bob    male

Saya ingin menyisipkan baris baru pada posisi pertama

nama: dekan, usia: 45, jenis kelamin: laki-laki

   age  name     sex
0   45  dean    male
1   30   jon    male
2   25   sam    male
3   18  jane  female
4   26   bob    male

Apa cara terbaik untuk melakukan hal ini di Panda?

Mungkin ini bukan cara yang paling efisien tetapi:

df.loc[-1] = ['45', 'Dean', 'male']  # adding a row
df.index = df.index + 1  # shifting index
df.sort_index(inplace=True) 

Keluaran:

 age  name     sex
0  45  Dean    male
1  30   jon    male
2  25   sam    male
3  18  jane  female
4  26   bob    male
Komentar (6)

Gunakan pandas.concat dan reindex dataframe baru:

import pandas as pd
df = pd.DataFrame({'name': ['jon','sam','jane','bob'],
           'age': [30,25,18,26],
           'sex':['male','male','female','male']})
# new line
line = pd.DataFrame({'name': 'dean', 'age': 45, 'sex': 'male'}, index=[0])
# concatenate two dataframe
df2 = pd.concat([line,df.ix[:]]).reset_index(drop=True)
print (df2)

Keluaran:

   age  name     sex
0   45  dean    male
1   30   jon    male
2   25   sam    male
3   18  jane  female
4   26   bob    male
Komentar (0)
import pandas as pd

df = pd.DataFrame({'name': ['jon','sam','jane','bob'],
           'age': [30,25,18,26],
           'sex': ['male','male','female','male']})

df1 = pd.DataFrame({'name': ['dean'], 'age': [45], 'sex':['male']})
df1 = df1.append(df)
df1 = df1.reset_index(drop=True)

Itu berhasil

Komentar (0)