All of these methods are used to access data in data frames.
iloc is used for integer location based indexing e,g, df.iloc[0] will select the first row in the data frame.
loc is used to select rows by label or by boolean (conditional lookup) e.g. df.loc['abcd'] will select the row based on the value of the index column with value 'abcd'
Also, we can perform boolean / conditional indexing : df[df['salary'] > 1000, ['first_name', 'last_name']], this will the rows with first_name and last_name columns with salary greater than 1000.
ix can be used as a hybrid of both loc and iloc however ix has been deprecated since pandas 0.20.1 so it's best not to use it.