如何在一个巨大的数据帧Python中高效地删除多个列

2024-09-28 03:12:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含75750列的数据帧。 我试图自动抓取5个特定的列,因为我需要这5个列中的每一个的数据来生成一个绘图。 我使用的for循环速度非常慢。 max_列表包含5个标签,它们是生成的,所以我不知道每个标签在巨大的数据帧中可能引用哪些列。因此在生成max_列表之前,不能手动选择列或知道列。在

   max_list = ["column7000", "column200", "column15000", "column30", "column2"]

   for i in max_frame.columns:
    if i not in max_list:
        del max_frame[i]

代码是有效的,但它需要先发制人!在完成运行之前,不会运行其他代码。 我试过找赛顿,但没用。我使用的是python3.6中最新版本的Jupyter笔记本。 任何帮助都将不胜感激。在


Tags: 数据代码in绘图列表for标签手动
1条回答
网友
1楼 · 发布于 2024-09-28 03:12:31

了解一点问题,假设我们要切片除max_列表中的列之外的所有列,并且一个数据集中可能有许多列和行。在

在迭代过程中,我们将移除不在列表中的项,并将其添加到所需的新列表中。在

max_list = ["column7000", "column200", "column15000", "column30", "column2"]

max_frame_1 = max_frame[:]   # let's take a copy of actual dataset

desired = [max_frame_1.remove(item) for item in max_frame_1 if not in max_list]

如果这是可行的,希望这是最快捷的方法。在

此外,当我们有大量的数据和锻炼较少,我们需要尽量简单。在

相关问题 更多 >

    热门问题