我正在尝试使用以下代码在pandas数据框中按索引号删除多列(数据集中的第2列和第70列,分别索引为1和69):
df.drop([df.columns[[1, 69]]], axis=1, inplace=True)
我收到以下错误:
TypeError: unhashable type: 'Index'
在我的代码中,[1,69]突出显示并说:
Expected type 'Integral', got 'list[int]' instead
下面的代码完成了我希望它成功完成的工作,但是在两行重复的代码上(首先删除col索引69,然后删除1,顺序很重要,因为删除之前的列会更改后面的列的索引)。我以为我可以简单地将多个列索引指定为一个列表,但是上面我可能有问题吗?
df.drop([df.columns[69]], axis=1, inplace=True)
df.drop([df.columns[1]], axis=1, inplace=True)
有没有一种方法可以像上面的第一个代码片段一样在一行上执行此操作?
您无需使用将其包装在列表中[..]
,只需提供columns索引的子选择即可:
df.drop(df.columns[[1, 69]], axis=1, inplace=True)
因为索引对象已被视为类似于列表。
问题内容: 我有一个混合类型的pandas dataFrame,有些是字符串,有些是数字。我想用“。”替换字符串列中的NAN值,并用0替换浮点数列中的NAN值。 考虑这个小的虚拟示例: 现在,我可以分为三行: 由于这是一个很小的数据帧,因此3行可能没问题。在我的真实示例中(由于数据机密性原因,在此无法共享),我还有更多的字符串列和数字列。所以我最终只为fillna写了很多行。有一种简洁的方法吗?
我构建了一个由Hashmap中定义的nameValue对组成的json对象 谢谢
这个问题以前在stackoverflow上被问过,但没有作为帖子的主要问题出现。这是一个次要的问题。这就是为什么我在一个新的讨论中问它。目的是要有更好的回答率。在发布这个问题之前,我问了stackoverflow一个建议 我尝试用jetty 9.4.8运行一个应用程序的部署。它是一个角java maven多模块应用程序 当我运行jetty来部署我的war时,我会出现以下错误。我在网上深入搜索,但没
问题内容: 我在不同的列中有数据,但是我不知道如何提取数据以将其保存在另一个变量中。 如何选择然后将其保存到df1中? 我试过了 似乎没有任何工作。 问题答案: 列名(字符串)无法按照你尝试的方式进行切片。 在这里,你有两个选择。如果从上下文中知道要切出哪些变量,则可以通过将列表传递给语法来仅返回那些列的视图。 或者,如果需要对它们进行数字索引而不是按其名称进行索引(例如,你的代码应在不知道前两列
问题内容: 我必须阅读一些文件,其中一些文件采用Excel格式,有些文件采用CSV格式。一些文件具有数百列。 有没有一种方法可以选择多个列范围而不指定所有列名或位置?例如,选择第1 -10、15、17和50-100列: 从Excel文件和CSV文件创建数据框时以及创建数据框框程序后,我都需要知道如何执行此操作。 问题答案: 采用 所以你可以做
问题内容: 我想将一些数据带入pandas DataFrame,并为导入时的每一列分配dtypes。我希望能够对具有许多不同列的较大数据集执行此操作,但是,例如: 结果是: TypeError:不了解数据类型 我尝试了其他一些方法,例如: TypeError:“类型”类型的对象没有len() 如果我把它应用于两列的浮点格式。 最后,我只希望能够向它传递数据类型列表,就像我向它传递列名称列表一样。