根据列表删除熊猫列

时间:2020-03-25 15:17:36

标签: python pandas

我有一个列表:

my_list = ['a', 'b']

和一个熊猫数据框:

d = {'a': [1, 2], 'b': [3, 4], 'c': [1, 2], 'd': [3, 4]}
df = pd.DataFrame(data=d)

如何根据列表df删除my_list中的列,在这种情况下,删除列ab

2 个答案:

答案 0 :(得分:2)

这很简单:

df = df.drop(columns=my_list)

drop通过指定列名列表来删除列

答案 1 :(得分:0)

这是一个使用列表理解的简洁脚本:[在my_list中x的df.pop(x)]

my_list = ['a', 'b']
d = {'a': [1, 2], 'b': [3, 4], 'c': [1, 2], 'd': [3, 4]}
df = pd.DataFrame(data=d)
print(df.to_markdown())
|    |   a |   b |   c |   d |
|---:|----:|----:|----:|----:|
|  0 |   1 |   3 |   1 |   3 |
|  1 |   2 |   4 |   2 |   4 |

[df.pop(x) for x in my_list]
print(df.to_markdown())
|    |   c |   d |
|---:|----:|----:|
|  0 |   1 |   3 |
|  1 |   2 |   4 |