'Returns
preferences: numpy array of shape [(item_id,preference)]
Return all existing Preferences expressed for that item,'

def preferences_for_item(self, item_id, order_by_id=True):

    item_id_loc = np.where((self._item_ids == item_id))
    if (not item_id_loc[0].size):
        raise ItemNotFoundError('Item    not    found')
    preferences = self.index[:, item_id_loc]
    preferences = preferences.flatten()
    return self._user_ids[preferences]
