Selecting data with both integers and labels
Sometimes, you want the functionality of both .iloc
and .loc
, to select data by both position and label. In earlier versions of pandas, .ix
was available to select data by both position and label. While this conveniently worked for those specific situations, it was ambiguous by nature and was a source of confusion for many pandas users. The .ix
indexer has subsequently been deprecated and thus should be avoided.
Before the .ix
deprecation, it was possible to select the first five rows and the columns of the college dataset from UGDS_WHITE
through UGDS_UNKN
using college.ix[:5, 'UGDS_WHITE':'UGDS_UNKN']
. This is now impossible to do directly using .loc
or .iloc
. The following recipe shows how to find the integer location of the columns and then use .iloc
to complete the selection.
How to do it…
- Read in the college dataset and assign the institution name (
INSTNM
) as the index:>...