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

如何按名称切片Pandas DataFrame的连续列并同时筛选行

Pandas 连续列选取问题解答

核心结论

Pandas完全支持按列名直接选取连续列,你注释里的写法只需要去掉外层多余的方括号就可以直接生效。

等效可运行语法

你想要的效果可以直接通过以下代码实现:

print(df.loc[1:5, 'A':'C'])

这个写法和你现有正常运行的df.loc[1:5, ['A', 'B', 'C']]返回结果完全一致,同时完成了行范围切片和连续列选取的需求。

注意事项与扩展用法

  • loc索引器的切片规则是左闭右闭,和Python原生列表的左闭右开不同,上面的写法会同时包含起始列A和结束列C,刚好匹配连续列选取的需求。
  • 如果需要动态计算列的位置(比如列名无固定规律、需要运行时确定起止列的场景),也可以通过列索引的位置切片实现:
start_idx = df.columns.get_loc('A')
end_idx = df.columns.get_loc('C')
# 位置切片是左闭右开,所以结束索引要+1
print(df.loc[1:5, df.columns[start_idx:end_idx+1]])

常规场景下直接使用列名字符串切片即可,写法更简洁高效。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 05:27:01