使用for循环中的字母来调用属性

时间:2018-01-10 14:24:12

标签: python-3.x pandas

我想迭代字母或单词并使用它们来调用pandas数据帧的属性,这是一个例子:

数据:

df = pd.DataFrame(np.random.randn(10, 4), columns=list('ABCD'))

然后我需要迭代B列和C列进行计算,例如平均值:

for letter in 'BC': df.letter.mean()

这里我收到以下错误: AttributeError:' DataFrame'对象没有属性'字母'

有什么想法解决这个问题吗? 非常感谢!

2 个答案:

答案 0 :(得分:1)

你可以这样做:

for letter in 'BC':
    df[letter].mean()

[]可以通过名称作为字符串访问列:df['B']

答案 1 :(得分:0)

我认为你需要[]

for letter in 'BC':
     print(df[letter].mean())