2024-09-30 08:32:29 发布
网友
假设我在pandas中有一个数据帧df,其中第0行到第99行,我只想保留列表x中的df行。在
df
x
假设list x基于一些可以更改的编程逻辑,有一些值,比如[3, 10, 71]。在
[3, 10, 71]
如果我尝试访问df[df.index[x],'SomeColName'],我通常会得到一个错误消息,说TypeError: unhashable type: 'Int64Index'。在
df[df.index[x],'SomeColName']
TypeError: unhashable type: 'Int64Index'
如何将list转换为Int64Index类型?在
list
Int64Index
我使用的是python3.4。在
这里不需要将列表转换为索引-如果要访问特定的行和列,可以使用iloc:
iloc
df.iloc[[3, 10, 71], 'SomeColName']
这将在“SomeColName”列的第3、10和71行返回数据帧的视图。在
如果您想删除所有其他行和列,可以将名称df重新分配给这个视图。在
写df[df.index[x],df.index[x]实际上试图找到两个名为df.index[x]和'SomeColName'的列。由于列名需要是散列的,当Pandas查找df.index[x](索引对象是可变的)时,会出现一个错误。在
df[df.index[x],df.index[x]
df.index[x]
'SomeColName'
这里不需要将列表转换为索引-如果要访问特定的行和列,可以使用
iloc
:这将在“SomeColName”列的第3、10和71行返回数据帧的视图。在
如果您想删除所有其他行和列,可以将名称
df
重新分配给这个视图。在写
df[df.index[x],df.index[x]
实际上试图找到两个名为df.index[x]
和'SomeColName'
的列。由于列名需要是散列的,当Pandas查找df.index[x]
(索引对象是可变的)时,会出现一个错误。在相关问题 更多 >
编程相关推荐