Python 参数化中的列名

Python 参数化中的列名,python,pandas,Python,Pandas,我想知道是否可以参数化列名。 我有一个例子 import pandas as pd df = pd.DataFrame({'region':[1,2,3,4,5,6], 'id_1':[456, 456, 342, 987, 424, 424], 'id_2':[98, 87, 65, 65, 32, 43], 'id_3':[12, 12, 34, 34, 56, 56],

我想知道是否可以参数化列名。 我有一个例子

import pandas as pd
df = pd.DataFrame({'region':[1,2,3,4,5,6],
               'id_1':[456, 456,    342,    987,    424,    424],
               'id_2':[98,  87, 65, 65, 32, 43],
               'id_3':[12,  12, 34, 34, 56, 56],
               'count':[1,0,1,1,0,0]})

reg_id=df.groupby(['region', 'id_1'])['count'].value_counts().unstack(fill_value=0)

其思想是引入一行用于id_列的参数化。大概是这样的:

**=id\u 1

**reg_id=df.groupby(['region',column])['count'].value_counts().unstack(fill_value=0)


更改此参数后,我将能够根据需要的列进行分组,而无需更改脚本中的任何内容。现在,我为每个列“id”都编写了几个脚本。

reg\u id=df.groupby(['region',column])['count'].value\u counts().unstack(fill\u value=0)
对我来说适用于
column='id\u 1'
,所以你想为所有
id\u
存根每次都不使用不同的groupby执行此操作吗?你能准确地分享你想要的输出是什么样子吗?@user3483203,我想更改一个列名,以便在需要为不同的列运行脚本时运行它。不一定是“groupby´”,而是我希望为此执行的所有数据操作column@anky,我尝试过这样做,但它返回了一个错误。它给出的结果是否与引用列名时的结果相同?
reg\u id=df.groupby(['region',column])['count'].value\u counts().unstack(fill\u value=0)
适用于
column='id\u 1'
所以您想为所有
id\u
存根每次都不使用不同的groupby执行此操作吗?你能准确地分享你想要的输出是什么样子吗?@user3483203,我想更改一个列名,以便在需要为不同的列运行脚本时运行它。不一定是“groupby´”,而是我希望为此执行的所有数据操作column@anky,我尝试过这样做,但它返回了一个错误。它是否给出与引用列名时相同的结果?