python - 如何在数据框中删除多列,同时使用 loc 和列名
问题描述
我想从数据框中删除几列,其中几列是连续的,可以使用 df.loc 进行分组。
但是我也有一些列名需要使用列名本身来删除。
有人可以帮助我,在同一个 drop sattement 中同时使用 df.loc 和列名。
df_modified = df.drop(df.loc[:, 'Quarter of Joining': 'Age in Company (Years)'].columns, axis =1)
我还想用他们的名字删除更多列,即说'DOB','Gender'
解决方案
在我看来,您的解决方案是最简单的,这里是替代方案:
another = ['DOB','Gender']
m1 = (df.columns.values == 'Quarter of Joining').cumsum() != 0
m2 = (df.columns.values[::-1] == 'Age in Company (Years)').cumsum() != 0
df_modified = df = df.drop(df.columns[m1 & m2[::-1]].union(another), axis=1)
您的解决方案应该修改:
another = ['DOB','Gender']
c = df.loc[:, 'Quarter of Joining': 'Age in Company (Years)'].columns
df_modified = df.drop(c.union(another), axis=1)
推荐阅读
- autocomplete - 要实现 Google Place Autocomplete API,session_token 是强制性的吗?
- javascript - 如何在不重新加载 HTML 页面的情况下重定向锚标记链接?
- html - HTML5 画布:如何查询或修改底层位图尺寸而不是 DOM 元素尺寸?
- scala - 如何仅从地图中提取值
- c++ - AVX512非法指令
- treeview - Aggrid-treeGrid:错误:没有为 DetailPanelComponent 找到组件工厂
- java - 如何从图像表示构造二叉树?
- angular - 如何正确编写服务并将图像上传到 Angular 2?
- jquery - 带有 svg 的对象只能在它周围点击
- python - ValueError:无法从 python 2.7 中的形状广播输入数组