Python 截断数据帧中的所有行

Python 截断数据帧中的所有行,python,python-3.x,pandas,Python,Python 3.x,Pandas,我需要测试,如果数据帧中没有行,一些代码是否有效。在SQL中,可以使用truncate命令清除表中的所有行。我找到了熊猫命令,但无法摆脱最后一排。我这样做: df.truncate(after=0, before=0) …但它离开了第0排。有什么想法吗?按所有索引值使用删除: df1 = df.drop(df.index) 或DataFrame构造函数,仅包含列参数: df1 = pd.DataFrame(columns=df.columns) 样本: df = pd.DataFrame(

我需要测试,如果数据帧中没有行,一些代码是否有效。在SQL中,可以使用truncate命令清除表中的所有行。我找到了熊猫命令,但无法摆脱最后一排。我这样做:

df.truncate(after=0, before=0)

…但它离开了第0排。有什么想法吗?

按所有索引值使用
删除

df1 = df.drop(df.index)
DataFrame
构造函数,仅包含
参数:

df1 = pd.DataFrame(columns=df.columns)
样本

df = pd.DataFrame({'a':list('ab'), 'b':range(2)})

您可以使用
df.head(0)


你的
截断
在我这边工作

df.truncate(before=-1, after=-1)
Out[835]: 
Empty DataFrame
Columns: [A, B, C]
Index: []

您是否尝试过before=1
?我刚刚尝试过-如果您没有“after”,它只会删除第0行并保留所有其他内容,如果我将“after”保留在那里,我得到
ValueError:Truncate:0必须在使用
pd的1
Am之后。
'0.19.2'
@cardamom pd.\u版本:'0.22.0'@cardamom确保没有负索引dude:-)
In [3]: df = pd.DataFrame([{'foo': 1, 'bar': 2}, {'foo': 3, 'bar': 4}])

In [4]: df
Out[4]: 
   bar  foo
0    2    1
1    4    3

In [5]: df.head(0)
Out[5]: 
Empty DataFrame
Columns: [bar, foo]
Index: []
df.truncate(before=-1, after=-1)
Out[835]: 
Empty DataFrame
Columns: [A, B, C]
Index: []