熊猫将变量名传递给列名

JJS*_*ith 6 python pandas

我有一个包含13个不同列名的数据框,我将这些标题分为两个列表。我现在想对每个列表执行不同的操作。

是否可以将列名作为变量传递到pandas中?目前,我的代码可以在列表中循环,但是我在尝试将列名传递给函数时遇到了麻烦

CONT = ['age','fnlwgt','capital-gain','capital-loss']
#loops through columns
for column_name, column in df.transpose().iterrows():
    if column_name in CONT:
        X = column_name
        print(df.X.count())
    else:
        print('')
Run Code Online (Sandbox Code Playgroud)

jez*_*ael 4

我认为你可以使用subset创建自list CONT

print df
  age fnlwgt  capital-gain
0   a    9th             5
1   b    9th             6
2   c    8th             3

CONT = ['age','fnlwgt']

print df[CONT]
  age fnlwgt
0   a    9th
1   b    9th
2   c    8th

print df[CONT].count()
age       3
fnlwgt    3
dtype: int64

print df[['capital-gain']]
   capital-gain
0             5
1             6
2             3
Run Code Online (Sandbox Code Playgroud)

也许更好listdictionary它是由以下人员创建的to_dict

d = df[CONT].count().to_dict()
print d
{'age': 3, 'fnlwgt': 3}
print d['age']
3
print d['fnlwgt']
3
Run Code Online (Sandbox Code Playgroud)