Python 基于列表删除列

Python 基于列表删除列,python,pandas,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中的列,在这种情况下,删除列a和b这非常简单: df = df.drop(columns=my_list) drop通过指定列名列表来删除列这非常简单: df = df.drop(columns=my_list) drop通过指定列名

我有一份清单:

my_list = ['a', 'b']
以及数据帧:

d = {'a': [1, 2], 'b': [3, 4], 'c': [1, 2], 'd': [3, 4]}
df = pd.DataFrame(data=d)
如何根据列表删除
df
中的列,在这种情况下,删除列
a
b
这非常简单:

df = df.drop(columns=my_list)
drop
通过指定列名列表来删除列

这非常简单:

df = df.drop(columns=my_list)

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

这是一个使用列表理解的简明脚本:[df.pop(x)代表我的列表中的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 |

这是一个使用列表理解的简明脚本:[df.pop(x)表示我的列表中的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 |

df.drop(my_list,1)
使用
df.drop
请阅读文档
df.drop(my_list,1)
使用
df.drop
请阅读文档,虽然这可能会回答问题,但它已标记为供审阅。没有解释的答案通常被认为是低质量的。请提供一些注释,说明为什么这是正确答案。虽然这可能回答了问题,但它已标记为供审查。没有解释的答案通常被认为是低质量的。请提供一些评论,说明为什么这是正确答案。