我认为这应该很简单,但我尝试了一些想法,但没有一个奏效:
last_row = len(DF)
DF = DF.drop(DF.index[last_row]) #<-- fail!
我试过使用负号,但这也会导致错误。我肯定还是误解了一些基本的东西。
我认为这应该很简单,但我尝试了一些想法,但没有一个奏效:
last_row = len(DF)
DF = DF.drop(DF.index[last_row]) #<-- fail!
我试过使用负号,但这也会导致错误。我肯定还是误解了一些基本的东西。
当前回答
使用索引
df.iloc[:-1,:]
这就是iloc存在的原因。你也可以用head或tail。
其他回答
Drop返回一个新数组,这就是为什么它在og post中阻塞的原因;我有一个类似的要求,重命名一些列标题,并删除了一些行,因为一个格式不正确的csv文件转换为Dataframe,所以在阅读这篇文章后,我使用:
newList = pd.DataFrame(newList)
newList.columns = ['Area', 'Price']
print(newList)
# newList = newList.drop(0)
# newList = newList.drop(len(newList))
newList = newList[1:-1]
print(newList)
它工作得很好,正如你可以看到上面的两条注释掉的行,我尝试了drop.()方法,它工作,但不像使用[n:-n]那样酷和可读,希望能帮助到一些人,谢谢。
DF[:-n]
其中n是最后要删除的行数。
删除最后一行:
DF = DF[:-1]
删除最后n行:
df.drop(df.tail(n).index,inplace=True) # drop last n rows
通过同样的方式,可以删除前n行:
df.drop(df.head(n).index,inplace=True) # drop first n rows
DF。drop((label =None, axis=0, index = last_row)
作为的函数:
DataFrame。drop(label =None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')
从行或列中删除指定的标签。
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.drop.html
使用索引
df.iloc[:-1,:]
这就是iloc存在的原因。你也可以用head或tail。