I have the following dataset
Books'Title Authors Publishing Year \
1 Il nome della rosa Umberto Eco 1980
2 L'amore che ti meriti Daria Bignardi 2014
3 Memorie dal sottsuolo Fëdor Dostoevskij 1864
4 Oblomov Ivan Alexandrovich Goncharov 1859
Publication House
1 Bompiani
2 Mondadori
3 Rizzoli
4 Feltrinelli
I have built it as follows:
data = [("Il nome della rosa","Umberto Eco", 1980),
("L'amore che ti meriti","Daria Bignardi", 2014),
("Memorie dal sottsuolo", " Fëdor Dostoevskij", 1864),
("Oblomov", "Ivan Alexandrovich Goncharov ", 1859)]
index = range(1,5,1)
data = pd.DataFrame(data, columns = ["Books'Title", "Authors", "Publishing Year"], index = index)
data
pubhouses = ["Bompiani", "Mondadori", "Rizzoli", "Feltrinelli"]
data.insert(3, 'Publication House', pubhouses)
data
I am trying adding new rows as follows in the 4th position but without changing the original index of the dataset. By following the suggestions of this website page
May I ask - since I am a beginner how to possibly perform this operation? How would it be possible to exchange the original index of the dataset?
Thanks
CodePudding user response:
Because your index is numeric and loc
and iloc
are the same here (and only here), you can enlarge your dataframe easily:
data.loc[data.index[-1] 1] = new_row
print(data)
# Output
Books'Title Authors Publishing Year Publication House
1 Il nome della rosa Umberto Eco 1980 Bompiani
2 L'amore che ti meriti Daria Bignardi 2014 Mondadori
3 Memorie dal sottsuolo Fëdor Dostoevskij 1864 Rizzoli
4 Oblomov Ivan Alexandrovich Goncharov 1859 Feltrinelli
5 Le avventure di Pinocchio Carlo Collodi 1883 Giunti
Else you have to build a dataframe and concatenate it:
df = pd.DataFrame([new_row], columns=data.columns)
data = pd.concat([data, df], ignore_index=True)
print(data)
# Output
Books'Title Authors Publishing Year Publication House
0 Il nome della rosa Umberto Eco 1980 Bompiani
1 L'amore che ti meriti Daria Bignardi 2014 Mondadori
2 Memorie dal sottsuolo Fëdor Dostoevskij 1864 Rizzoli
3 Oblomov Ivan Alexandrovich Goncharov 1859 Feltrinelli
4 Le avventure di Pinocchio Carlo Collodi 1883 Giunti