如何在Pandas DataFrame中同时索引单列与列范围?
Pandas DataFrame同时索引单列和列范围的解决方法
你遇到的语法错误是因为Python列表中不能直接使用12:20这种切片语法作为元素。要同时选取单列索引和列范围,有两种简单可行的方法:
方法一:使用numpy.r_拼接索引
numpy.r_可以快速将单个索引和切片合并成一个连续的索引数组,非常适合这种场景:
import numpy as np # 注意iloc的切片是左闭右开,所以12到20的范围要写12:21 new_df = all_df.iloc[:, np.r_[0, 12:21]]
方法二:手动构造索引列表
先把列范围转成列表,再和单列索引合并:
# range(12,21)生成12到20的整数序列,转成列表后和[0]合并 cols = [0] + list(range(12, 21)) new_df = all_df.iloc[:, cols]
这两种方法都能正确生成包含列索引0和12-20的新DataFrame,解决你之前的语法错误问题。
内容的提问来源于stack exchange,提问作者SEJUNG CHUN
相关产品推荐
相关产品推荐

