Cortar múltiples rangos de columnas con Pandas

Supongamos que tengo 20 columnas en un conjunto de datos y quiero usar 19 como entrada. y las columnas de entrada son columnas de 1:10 y 12: 20 y quiero usar la columna 11 como salida. Entonces, ¿cómo dar este tipo de rango utilizando pandas?

por ejemplo: Ejemplo de conjunto de datos

considera que los datos anteriores tienen 4 columnas, pero debo ingresar solo 3 columnas, pero esas columnas son b, d, e y quiero omitir c columna. Ahora mismo estoy usando input = dftrain.loc [:, : ‘e’ ] que considera las 4 columnas.

Opción 1
np.r_

 idx = np.r_[0:11, 12:20] idx array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19]) 

Pase esto a iloc

 df.iloc[:, 11] = df.iloc[:, idx].sum(axis=1) # sum, for example 

opcion 2
pd.IndexSlice

 idx = pd.IndexSlice[0:11, 12:20] idx (slice(0, 11, None), slice(12, 20, None)) 

Puedes usar idx de la misma manera que antes.