我引用的数据框如下(Sales是列名):
Sales
total = pd.to_numeric(sales_df.Sales.str.replace("$", "")).sum()
但是我不想Sales被硬编码,我想要一个变量来使其动态。怎么做?
TIA
您可以使用方括号对列进行索引:
df['col_name']
因此,当您接受输入为a时,str您可以执行以下操作:
str
total = pd.to_numeric(sales_df[user_input_name].str.replace("$", "")).sum()
此外,将列作为属性访问可能导致模棱两可的行为。如具有列命名index,并尝试做df.index这可能要列不同的值df['index'],或者如果你有一个名为一样像任何有效的方法DF柱sum或var那么这将导致语法错误。
index
df.index
df['index']
sum
var
因此,我强烈建议您使用方括号来选择列。