df = pd.DataFrame(
[('Alice', 1010, 'sales'), ('Bob', 1011, 'service')],
columns = ['name', 'emp_id', 'dept']
).set_index('emp_id')
# here's a new employee to append, who has no id:
row = pd.Series({'name': 'Eve', 'dept': 'r&d'})
# this will wipe all the existing employee id numbers:
df.append(row, ignore_index=True)
解决此问题的一种方法是手动递增索引:
def add_new_row(df, row):
row.name = max(df.index)+1
return df.append(row)
# the existing ids are now preserved:
add_new_row(df, row)
2条答案
按热度按时间ogsagwnx1#
当
append
-ing时,可以设置ignore_index=True
:siv3szwd2#
请注意,如果您现有的索引是有意义的,则可接受的答案是危险的。例如:
解决此问题的一种方法是手动递增索引: