删除数据帧中的列时,我使用:
del df['column_name']
这工作很棒。为什么我不能用下面的?
del df.column_name
因为可以以df.column_name
的方式访问列/Series,所以我希望这能起作用。
使用:
columns = ['Col1', 'Col2', ...]
df.drop(columns, inplace=True, axis=1)
这将就地删除一个或多个列。请注意,inplace=True
是在熊猫v0.13中添加的,不适用于旧版本。在这种情况下,您必须将结果分配回:
df = df.drop(columns, axis=1)
正如你所猜到的,正确的语法是
del df['column_name']
仅仅由于Python中的语法限制,很难让del df.column\u name
工作deldf[name]
在Python的封面下被翻译成df.\uu delitem\uuuu(name)
。
在熊猫中执行此操作的最佳方法是使用drop
:
df = df.drop('column_name', 1)
其中1
是轴号(0
表示行,1
表示列。)
要删除该列而不必重新分配df
,可以执行以下操作:
df.drop('column_name', axis=1, inplace=True)
最后,要按列编号而不是按列标签删除,请尝试删除,例如,第1、第2和第4列:
df = df.drop(df.columns[[0, 1, 3]], axis=1) # df.columns is zero-based pd.Index
同时使用列的“文本”语法:
df.drop(['column_nameA', 'column_nameB'], axis=1, inplace=True)
注意:在v0.21.0(2017年10月27日)中引入了drop()方法,该方法接受index/columns关键字作为指定轴的替代方法。
所以我们现在可以做:
df = df.drop(columns=['column_nameA', 'column_nameB'])
我为laravel安装了这个Cartalyst Stripe软件包,这对我来说只是个麻烦。。我只是不能让它工作,现在我决定完全删除它。因此,我在composer.json中删除了需要这个包的行。我从提供者的confing/app.php中删除了该行 我错过了什么?
用于从不存在的VM中删除磁盘的所有在线说明都与旧的Azure UI有关,该UI不包含与新门户相同的菜单命令。因此,我需要使用新的Azure管理门户删除孤立磁盘的说明。旧门户的说明对此操作毫无价值。
问题内容: 我正在尝试删除包含特定字符串的特定行。 我有一个名为 numbers.txt 的文件,其内容如下: Peter· Tom TOM1 Inflammation 我要删除的是文件中的那个 tom ,所以我做了以下功能: 输出为: 彼得· 颜 如您所见,问题在于该函数删除了 tom 和 tom1 ,但是我不想删除 tom1 。我只想删除 tom 。这是我想要的输出: 彼得 TOM1 燕 有什
问题内容: 我有一个大文件,只需要删除几行,是否有任何方法可以打开新文件并复制整个文本? 编辑:主要问题是,当它在多个txt filse中运行时,该程序失败 问题答案: 有什么方法可以做到而无需打开新文件并复制整个文本? 不,没有。当然,如果您想 安全地 做的话就没有。 而且也不会真正帮助您。它可以让您用相等数量的字节替换文件中的字节序列,但这并不意味着删除一行。 您可以这样使用RAF: 给定初始
问题内容: 如何使用phpMyAdmin在MySQL表的列上删除“唯一键约束”? 问题答案: 唯一约束也是索引。 首先使用来查找索引的名称。索引的名称存储在该查询结果中调用的列中。 然后,您可以使用DROP INDEX: 或ALTER TABLE语法:
问题内容: 我有以下数组。 我想删除最后一个元素,即2。 我用过,但不会删除值。 问题答案: 使用拼接(索引,多个)