假设我有一个包含以下数值的数据框:
df:
col1 col2 value
1 2 3
1 2 1
2 3 1
我希望能够首先按照数据框的前两列(col1和col2)进行分组,然后对第三列(value)的值求平均。因此,期望的输出结果将如下所示:
col1 col2 avg-value
1 2 2
2 3 1
我正在使用以下代码:
columns = ['col1','col2','avg']
df = pd.DataFrame(columns=columns)
df.loc[0] = [1,2,3]
df.loc[1] = [1,3,3]
print(df[['col1','col2','avg']].groupby('col1','col2').mean())
出现以下错误:
ValueError: No axis named col2 for object type <class 'pandas.core.frame.DataFrame'>
任何帮助将不胜感激。