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

使用Python将DataFrame指定列浮点值向上取整为整数的问题咨询

问题解决方法

你现有代码存在两个问题:

  • 列名选择的写法错误:list("a site", "b site", "c site")属于非法写法,list构造方法不支持传入多个独立字符串参数,直接定义列表存储列名即可
  • 取整逻辑不符合需求:astype(int)会直接截断小数部分做向下取整,无法实现你需要的取整效果

可行方案(匹配样例输出)

你给出的样例输出符合向上取整的逻辑(所有带小数的数值都向更大的整数取整),可以借助numpy的向量化ceil方法实现,代码如下:

# 若未导入numpy需先执行导入
import numpy as np

# 定义要处理的列
target_cols = ["a site", "b site", "c site"]
# 先向上取整再转整数类型
df[target_cols] = np.ceil(df[target_cols]).astype(int)

执行后即可得到你期望的转换结果:

locationa siteb sitec site
aa521
bb671

其他可选取整逻辑

如果后续需要调整取整规则,可以替换对应的方法:

  • 四舍五入取整:将np.ceil替换为np.round
  • 向下取整(和原astype效果一致):将np.ceil替换为np.floor

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:45:04