根据DataFrame列名称选择变量

时间:2020-06-30 10:06:26

标签: python pandas

我刚开始使用Python,所以我确信这一定很简单,但是我自己仍然找不到答案。

我试图根据列名对DataFrame中的列应用不同的操作。这是一个非常简单的示例:

_controller

现在,我想做的是使用for循环遍历每列,并使用列名来找出要引用的变量。像这样:

import pandas as pd

A = 2
B = 4

df = pd.DataFrame([[1, 2],[3, 4]], columns=['A', 'B'])
columns = list(df)

换句话说,我希望将A列乘以2并将B列乘以4。问题是我不知道如何将列名“转换”为变量引用。

1 个答案:

答案 0 :(得分:1)

通过所有可能的列值创建字典,然后通过Index.map映射多个列:

A = 2
B = 4

d = {'A':A, 'B':B}

df = pd.DataFrame([[1, 2],[3, 4]], columns=['A', 'B'])

df = df.mul(df.columns.map(d))
print (df)
   A   B
0  2   8
1  6  16