首页 文章

如何将数据帧索引作为数组?

提问于
浏览
190

你知道如何将数据帧的索引列作为数组吗?我在CSV文件的“Accession”列中有一个入藏号列表,我将其导入Pandas,在导入过程中,我将索引设置为“Accession”列 . 现在,我需要在后面的步骤中将“Accession”列作为一组标签,但我不知道如何独立提取它 .

5 回答

  • 277

    您应该使用 values 属性:

    In [1]: df = pd.DataFrame(index=['a', 'b'])
    
    In [2]: df.index.values
    Out[2]: array(['a', 'b'], dtype=object)
    

    这可以访问数据的存储方式,因此无需进行转换 .
    注意:此属性也可用于许多其他pandas的对象 .

  • 14

    您可以使用 df.index 访问索引对象,然后使用 df.index.tolist() 获取列表中的值 .

  • 37

    如果您正在处理多索引数据帧,您可能只想提取多索引的一个名称的列 . 你可以这样做

    df.index.get_level_values('name_sub_index')
    

    当然 name_sub_index 必须是 FrozenList df.index.names 的元素

  • 69

    由于pandas 0.13你也可以使用get_values

    df.index.get_values()
    
  • 0

    我将pandas dataframe 转换为 list ,然后使用了基本的 list.index() . 像这样的东西:

    dd = list(zone[0]) #Where zone[0] is some specific column of the table
    idx = dd.index(filename[i])
    

    您的索引值为 idx .

相关问题