Python .drop()不删除列

Python .drop()不删除列,python,pandas,Python,Pandas,我正在做这项工作。 我在分类列中循环创建假人,但是pd.drop()没有删除我的列。我试过了 for i in range(44): dummies1 = pd.get_dummies(combined[cols_cat[i+71]], prefix=cols_cat[i+72]) combined = pd.concat([combined,dummies1], axis=1) combined = combined.drop(combined[cols_cat[i+7

我正在做这项工作。 我在分类列中循环创建假人,但是
pd.drop()
没有删除我的列。我试过了

for i in range(44):
    dummies1 = pd.get_dummies(combined[cols_cat[i+71]], prefix=cols_cat[i+72])
    combined = pd.concat([combined,dummies1], axis=1)
    combined = combined.drop(combined[cols_cat[i+71]], axis=1)

但是,当我选中
combined.head()
时,可以创建虚拟对象,但原始列仍然保留。drop函数总是给我带来麻烦,我觉得在经过大量使用/研究后,我仍然无法理解drop函数的
部分。
这里,
cols\u cat
是我前面创建的列名数组

cols_cat = train.iloc[:,1:117].columns
cols_cont = train.iloc[:,117:131].columns 
我正在努力创建一个模型数据框架,供人们试用,以便更容易回答。在此之前,是否有人发现我犯的任何根本性错误?

请执行以下操作:

combined = combined.drop(cols_cat[i+71], axis=1)


根据,
axis=1
从列中删除标签,而
axis=0
从索引中删除标签。

我认为在combined.drop()中,您需要指定列名,这里是整个列的名称。Second@BhushanPant请参阅。另一种删除列的方法是
deldf[col]
。很抱歉我错过了。但他并没有为此而挣扎,对吗?是的!我知道也不知道。什么时候使用标签,什么时候使用数组,这让人很困惑。有直观的解释吗?
combined = combined.drop(cols_cat[i+71], axis=1)
combined.drop(cols_cat[i+71], axis=1, inplace=True)