python - 如何使用索引来调用 pandas 数据框的标签

标签 python pandas dataframe indexing

也许这是一个微不足道的问题,但我找不到这个问题的答案: 我有一个包含这些列的数据框:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

df.columns
Index(['label', 'num.feature 1', 'num.feature 2', 'num.feature 3',
   'num.feature 4', 'num.feature 5',...,'num.feature 30'],
  dtype='object')

我想找到一种使用列名称中的索引变量 i 来访问列的方法

for i in range(30):
    df['num.feature **i**'].hist(bins=90,range=(0,0.4))

例如打印每列的各种直方图。 有更好的方法吗?预先感谢您

最佳答案

有两种方法:

方法 1 预先提取您感兴趣的特征,并迭代这些特征​​。 IMO,这更干净,就好像您缺少功能名称一样,它仍然可以工作(如果您没有num.feature 6)

features = [i for i in df.columns if i.startswith('num.feature')]

for feature in features:
    plt.hist(df[feature], bins=90, range=(0,0.4))

方法 2 即时创建相关功能名称(如果缺少功能名称,您会遇到麻烦)

for i in range(1,31):
    plt.hist(df['num.feature '+str(i)])

关于python - 如何使用索引来调用 pandas 数据框的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50350539/

相关文章:

python - 在python中识别字符串中的某些单词短语

python - 将参数输入 tensorflow 中的占位符

python - 将函数应用于行,将字典解压缩为多列

python - 如何创建一个与索引无关的二元组?

python - PyQt5:QTableWidget 中复选框的状态更改

python - 基于不完全匹配的时间戳的 Pandas 合并

python - 从 Pandas 系列中的组中选择最小值

基于整数列的R : data.表子设置

python - 如何获得连续元素频率的排名?

python - 如何获取 1 列值并将其中一些值放入基于 bool 标志列的新列中?