当前位置: 首页 > 面试题库 >

python pandas通过列名称列表从数据框中选择列

汤修贤
2023-03-14
问题内容

我有一个包含很多列的数据框。现在,我只想选择某些列。我将要选择的所有列名称保存到Python列表中,现在我想根据该列表过滤数据框。

我一直在尝试做:

df_new = df[[list]]

其中list包含我要选择的所有列名。

但是我得到了错误:

TypeError: unhashable type: 'list'

任何帮助吗?


问题答案:

您可以删除一个[]

df_new = df[list]

也最好使用其他名称list,例如L

df_new = df[L]

看起来工作正常,我只尝试简化一下:

L = []
for x in df.columns: 
    if not "_" in x[-3:]: 
        L.append(x) 
print (L)

List comprehension

print ([x for x in df.columns if not "_" in x[-3:]])


 类似资料:
  • 问题内容: 我在python大熊猫中有一个数据框。数据框的结构如下: 我想选择以d开头的列。有没有一种简单的方法可以在python中实现。 问题答案: 您可以使用这种方式: 这个想法是通过选择列

  • 是否有任何方法可以在数据框中按索引(即整数)选择行,按列名选择列? 我尝试使用loc,但它返回一个错误,我知道iloc只适用于索引。 这是数据帧df的第一行。我愿意选择第一行,名为“Volume”的列,并尝试使用df.loc[0,'Volume']

  • 问题内容: 我有两个具有以下列名称的数据框: 我想通过加入(左)on获得以下列的数据框: 如果我要连接的列不是索引,我无法弄清楚该怎么做。最简单的方法是什么?谢谢! 问题答案: 您可以按以下方式使用left_on和right_on选项: 从问题中我不能确定您是否只想合并密钥是否位于左侧数据框中。如果是这种情况,则以下将执行此操作(以上内容实际上会进行多对多合并)

  • 问题内容: 可以说我有以下熊猫数据框: 我可以根据特定的值进行子集化: 但是如何根据值列表进行子集设置呢?-这样的东西: 问题答案: 您可以使用方法: 并得到相反的用法:

  • 问题内容: 我有2个表,一个包含我需要的最终结果,另一个包含我需要根据设定级别选择的列列表。 例如 : 所以,如果我做以下 然后,基本上我需要使用此select语句中的列名来确定从另一条语句中选择了哪些列。 香港专业教育学院尝试过的方法,我当然知道这是错的,但可以让我对我试图做的事情有所了解。 我试图以一种动态方式构建一个sql查询,该查询可以通过我放在表中的任何列进行更改。 从理论上讲,这应与以

  • 本文向大家介绍如何仅从R数据框中选择数字列?,包括了如何仅从R数据框中选择数字列?的使用技巧和注意事项,需要的朋友参考一下 最简单的方法是使用dplyr包的select_if函数,但我们也可以通过lapply来实现。 使用dplyr 使用lapply