You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建包含列名的变量用于Python的groupby函数?

哦,我明白你的问题了!你现在把多个列名拼成了一个单一的字符串赋值给a,但groupby()需要的是一个列名的列表(或者其他可迭代对象),所以它会把这个长字符串当成一个单独的列名去查找,自然会找不到对应的列啦。

解决方法很简单,只要把a定义成一个列表,每个列名作为列表里的独立元素就行:

# 把列名放进列表里,每个元素是单独的列名字符串
a = ['Column1', 'Column2', 'Column4', ..., 'Column30']
# 直接把列表传给groupby就可以了
data = data.groupby(a)['column3'].apply(', '.join).reset_index()

如果你的列名是从某个逗号分隔的字符串里来的(比如你之前可能是复制粘贴了一串列名),也可以把字符串拆分成列表:

# 假设你有个逗号分隔的列名字符串
column_names_str = 'Column1, Column2, Column4, ..., Column30'
# 用split方法拆成列表
a = column_names_str.split(', ')
# 再执行groupby操作
data = data.groupby(a)['column3'].apply(', '.join).reset_index()

另外还要注意一下列名的大小写哦!你代码里既有Column1这种首字母大写的,又有column3全小写的,要确保这些列名和你DataFrame里实际的列名完全一致,不然也会出现找不到列的错误~

内容的提问来源于stack exchange,提问作者Nirmine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:09:26