我必须阅读一些Excel格式的文件和一些CSV格式的文件。有些文件有数百列。
有没有办法选择多个列范围而不指定所有列名称或位置?例如,选择列1-10,15,17和50-100:
df = df.ix[1:10, 15, 17, 50:100]
我需要知道在从Excel文件和CSV文件创建数据框时以及在创建数据框架后如何执行此操作。
答案 0 :(得分:36)
使用np.r_
np.r_[1:10, 15, 17, 50:100]
array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 15, 17, 50, 51, 52, 53, 54, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
90, 91, 92, 93, 94, 95, 96, 97, 98, 99])
所以你可以做到
df.iloc[:, np.r_[1:10, 15, 17, 50:100]]