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

如何在pandas中将指定列转为大写并返回其余所有列数据

问题解法

现有错误代码:

hellodf= hellodf.loc[hellodf['ContactName'].str.upper()]

报错原因

pandas的.loc属性用于按标签筛选行/列,你传入ContactName列转大写后的字符串序列,既不符合.loc的入参规则,也无法实现仅修改单列、保留其余所有列的需求。

正确实现方案

方案1:直接修改原DataFrame

直接对目标列赋值转大写后的结果,其余列保持不变:

hellodf['ContactName'] = hellodf['ContactName'].str.upper()

如果目标列存在空值或非字符串值,可添加na_action='ignore'参数避免报错,空值会原样保留:

hellodf['ContactName'] = hellodf['ContactName'].str.upper(na_action='ignore')

方案2:生成新DataFrame(不改动原始数据)

使用assign方法生成新的DataFrame,仅修改目标列,其余列完全继承原始数据:

hellodf_new = hellodf.assign(ContactName = lambda df: df['ContactName'].str.upper())

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 07:45:08