Pandas 中数据框列的索引

发光体

主要问题是创建一个包含分类因子索引的列表

有很多列类型的数据框在导入文件之前确定pd.read_csv()

dtypes = {
    ...
    'Format_type': 'category',
    'Geo_new': 'category',
    'Age_min': 'int16',
    'Age_max': 'int16',
    'Sex': 'category',
    ...}

所以我制作了一个包含列名及其索引的表格,而不是自己使用分类

col_list = [i for i in (df.columns.get_values())]
idx_list = [i for i in range(len(df.columns.get_values()))]
column_num = pd.DataFrame(data = {'column_name': col_list,
                                  'idx_list': idx_list})
column_num

比获取列名column_name和索引idx_list

column_name idx_list
...
Format_type 5
Geo_new     6
Age_min     7
Age_max     8
Sex         9
...

并在列表中插入分类列索引:

categorical_features = [...5, 6, 9...]

因此,我自己填写列表。有没有办法创建列列表,哪些值是calegory自动的?

耶斯列

我相信您需要DataFrame.select_dtypes使用Index.get_indexer索引:

df = pd.DataFrame({
        'A':list('abcdef'),
         'B':pd.Categorical([4,5,4,5,5,4]),
         'C':[7,8,9,4,2,3],
         'D': pd.Categorical([1,3,5,7,1,0]),
         'E':[5,3,6,9,2,4],
         'F':list('aaabbb')
})

c = df.select_dtypes('category').columns
print (c)
Index(['B', 'D'], dtype='object')

i = df.columns.get_indexer(df.select_dtypes('category').columns)
print (i)
[1 3]

您的代码也应该简化:

col_list = df.columns.tolist()
idx_list = range(len(col_list))
column_num = pd.DataFrame(data = {'column_name': col_list, 'idx_list': idx_list})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在列相同的pandas数据框中查找索引值

来自分类Dev

从pandas数据框中选择特定的索引,列对

来自分类Dev

用Pandas Python中另一个数据框中的另一列的索引更新数据框中的一列

来自分类Dev

从具有多个索引的Pandas数据框中删除列

来自分类Dev

根据行索引值从pandas数据框列中求和

来自分类Dev

在Pandas的MultiIndex数据框中修改重复的子索引

来自分类Dev

创建具有多列索引的Pandas数据框

来自分类Dev

在Pandas数据框中跨组获取具有最大索引的列

来自分类Dev

更改多索引Pandas数据框中的列分组

来自分类Dev

在Pandas数据框中处理列

来自分类Dev

根据可变长度在Pandas数据框列中建立索引列表

来自分类Dev

Pandas / Dask:是否从第二数据框的多索引或其他两列中过滤数据框?

来自分类Dev

按日期对Pandas数据框列索引进行排序

来自分类Dev

Python:在Pandas数据框中缩放列

来自分类Dev

使用其他列的索引值在pandas数据框中的一列中进行字符串索引

来自分类Dev

在列相同的pandas数据框中查找索引值

来自分类Dev

遍历pandas数据框中的两列

来自分类Dev

Pandas数据框基于索引和列值删除行

来自分类Dev

选择Pandas数据框索引,此后列中的数据都高于特定值

来自分类Dev

根据行索引值从pandas数据框列中求和

来自分类Dev

将 Pandas 数据框转换为多索引列

来自分类Dev

将 Pandas 数据框索引重塑为列

来自分类Dev

从一个与重复索引匹配的 Pandas 数据框列中返回值

来自分类Dev

Pandas 数据框 - 从单独的列创建日期时间索引

来自分类Dev

pandas 数据框:从单索引更改为多列索引

来自分类Dev

迭代数据框中的列(Pandas)

来自分类Dev

pandas-选择与特定索引对应的数据框列

来自分类Dev

如何在pandas数据框中创建列层次索引

来自分类Dev

在 Pandas 数据框中插入 numpy 列

Related 相关文章

  1. 1

    在列相同的pandas数据框中查找索引值

  2. 2

    从pandas数据框中选择特定的索引,列对

  3. 3

    用Pandas Python中另一个数据框中的另一列的索引更新数据框中的一列

  4. 4

    从具有多个索引的Pandas数据框中删除列

  5. 5

    根据行索引值从pandas数据框列中求和

  6. 6

    在Pandas的MultiIndex数据框中修改重复的子索引

  7. 7

    创建具有多列索引的Pandas数据框

  8. 8

    在Pandas数据框中跨组获取具有最大索引的列

  9. 9

    更改多索引Pandas数据框中的列分组

  10. 10

    在Pandas数据框中处理列

  11. 11

    根据可变长度在Pandas数据框列中建立索引列表

  12. 12

    Pandas / Dask:是否从第二数据框的多索引或其他两列中过滤数据框?

  13. 13

    按日期对Pandas数据框列索引进行排序

  14. 14

    Python:在Pandas数据框中缩放列

  15. 15

    使用其他列的索引值在pandas数据框中的一列中进行字符串索引

  16. 16

    在列相同的pandas数据框中查找索引值

  17. 17

    遍历pandas数据框中的两列

  18. 18

    Pandas数据框基于索引和列值删除行

  19. 19

    选择Pandas数据框索引,此后列中的数据都高于特定值

  20. 20

    根据行索引值从pandas数据框列中求和

  21. 21

    将 Pandas 数据框转换为多索引列

  22. 22

    将 Pandas 数据框索引重塑为列

  23. 23

    从一个与重复索引匹配的 Pandas 数据框列中返回值

  24. 24

    Pandas 数据框 - 从单独的列创建日期时间索引

  25. 25

    pandas 数据框:从单索引更改为多列索引

  26. 26

    迭代数据框中的列(Pandas)

  27. 27

    pandas-选择与特定索引对应的数据框列

  28. 28

    如何在pandas数据框中创建列层次索引

  29. 29

    在 Pandas 数据框中插入 numpy 列

热门标签

归档