Reputation: 397
Suppose I have a dataframe with 100 columns. I want to select only 0,1 and 51-100 columns for all rows. I am trying something like this as of now:
df.iloc[:,[0,1,range(51,101)]]
But it is throwing error:
"setting an array element with a sequence"
Though it is working if I am passing only range and not column indices.
Also I have tried:
df.iloc[:,[0,1,51:102)]]
It is showing invalid syntax.
Can somebody please point out mistake here. Also please suggest alternative way to achieve functionality.
Upvotes: 3
Views: 5444
Reputation: 1196
You can do this without numpy.r_
:
new_df = df.iloc[:, [0, 1] + list(range(51,101))]
Upvotes: 4