我在Pandas DataFrame中有一个列列表,希望创建某些列列表而无需手动输入。
我的问题是我正在学习并且知识不足。
我曾尝试在互联网上搜索,但我的情况完全没有。如果有重复,我深表歉意。
我尝试从中删除的列表如下所示:
['model',
'displ',
'cyl',
'trans',
'drive',
'fuel',
'veh_class',
'air_pollution_score',
'city_mpg',
'hwy_mpg',
'cmb_mpg',
'greenhouse_gas_score',
'smartway']
这是我自己编写的代码: dataframe.columns.tolist()[:6,8:10,11]
在这种情况下,我尝试选择除“ air_pollution_score”和“ greenhouse_gas_score”之外的所有内容
我的最终目标是了解语法以及如何选择列表片段。
您可以这样做,也可以只drop用来删除不需要的列:
dataframe.drop(['air_pollution_score', 'greenhouse_gas_score'], axis=1).columns
Run Code Online (Sandbox Code Playgroud)
请注意,您需要指定axis=1以便pandas知道要删除列而不是行。
即使您想使用list语法,我也会说最好使用list理解。像这样的东西:
exclude_columns = ['air_pollution_score', 'greenhouse_gas_score']
[col for col in dataframe.columns if col not in exclude_columns]
Run Code Online (Sandbox Code Playgroud)
除非数据列中存在列,否则这将获取数据框中的所有列exclude_columns。