【问题标题】:what is the fast way to drop columns in pandas dataframe from a list of column names [duplicate]从列名列表中删除熊猫数据框中的列的快速方法是什么[重复]
【发布时间】:2017-03-28 19:34:00
【问题描述】:

我正在尝试找出使用列名列表在 df 中删除列的最快方法。这是一种花哨的特征缩减技术。 这就是我现在正在使用的,并且需要永远。任何建议都非常感谢。

    important2=(important[:-(len(important)-500)]) 
    for i in important:
        if i in important2:
            pass
        else:
            df_reduced.drop(i, axis=1, inplace=True)
    df_reduced.head()

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    使用包含要删除的列的list

    good_bye_list = ['column_1', 'column_2', 'column_3']
    df_reduced.drop(good_bye_list, axis=1, inplace=True)
    

    【讨论】:

    • 这绝对是“最好”的方式;但是,任何想法为什么需要很长时间才能运行。我有一个大数据框(200 万个观察值,98 列),但仍然......这应该非常快?除非我错过了什么。我花了 1 分钟以上的时间删除了两列。
    • 为什么在 .drop 提供此功能时使用列表? df_reduced.drop(columns=['column_1', 'column_2', 'column_3'], inplace=True) 无论如何都更具pythonic/可读性
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-14
    • 2016-11-12
    • 1970-01-01
    • 1970-01-01
    • 2022-11-15
    • 1970-01-01
    相关资源
    最近更新 更多