You can use: df.iloc[:, lambda x: x.index < 9 or x.index == 11]
Simpler solution will to define a list before that, and use the list inside iloc.
For example:
my_range = range(9)
my_range.append(11)
df_premises = df.iloc[:, my_range]
as mentioned in pandas documentation, input must be one of the following:
An integer, e.g. 5.
A list or array of integers, e.g. [4, 3, 0].
A slice object with ints, e.g. 1:7.
A boolean array.
A callable function with one argument (the calling Series or DataFrame) and that returns valid output for indexing
You can use simple slicing like df.iloc[:3] or a function like df.iloc[lambda x: x.index % 2 == 0].
So specific for what you asked about, following will work:
df.iloc[:, lambda x: x.index < 9 or x.index == 11]