从包含熊猫数据帧的列表中删除零

时间:2017-11-26 18:26:54

标签: list pandas dataframe strip

我有一份清单 [0,0,0,DataFrame1,0,0,DataFrame2,0,0,DataFrame3]

其中Dataframe是" Panda Dataframe"。 现在我要做的是剥离' 0' 0零(整数)。有没有办法我可以不使用循环这样做。我尝试使用set函数,但它不适用于panda Dataframes。

我的回答应该像这样 [DateFrame1,DataFrame2,DataFrame3]

1 个答案:

答案 0 :(得分:0)

正如@Zero,建议发表评论。

l = []
df = pd.DataFrame(np.random.randint(0,10,(5,5))
l.append(0)
l.append(0)
l.append(df)
l.append(0)
l.append(0)
l.append(df)

print(l)
[0, 0,    0  1  2  3  4
 0  5  4  9  6  7
 1  9  9  2  7  3
 2  4  9  4  8  3
 3  4  6  2  5  5
 4  8  1  2  1  8, 0, 0,    0  1  2  3  4
 0  5  4  9  6  7
 1  9  9  2  7  3
 2  4  9  4  8  3
 3  4  6  2  5  5
 4  8  1  2  1  8]

[x for x in l if isinstance(x,pd.DataFrame)]

输出:

[   0  1  2  3  4
 0  5  4  9  6  7
 1  9  9  2  7  3
 2  4  9  4  8  3
 3  4  6  2  5  5
 4  8  1  2  1  8,    0  1  2  3  4
 0  5  4  9  6  7
 1  9  9  2  7  3
 2  4  9  4  8  3
 3  4  6  2  5  5
 4  8  1  2  1  8]