截断pandas数据帧中的所有行

时间:2018-05-08 16:04:42

标签: python python-3.x pandas

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

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

..但它离开了第0行。有什么想法吗?

3 个答案:

答案 0 :(得分:7)

您可以使用df.head(0)

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: []

答案 1 :(得分:5)

按所有索引值使用drop

df1 = df.drop(df.index)

DataFrame只有columns参数的df1 = pd.DataFrame(columns=df.columns) 构造函数:

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

<强>示例

df1 = df.drop(df.index)
print (df1)
Empty DataFrame
Columns: [a, b]
Index: []
if sha256_crypt.verify(request.form['password'], userdata[2]):

答案 2 :(得分:2)

你的truncate在我这边工作

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