BUG: support EAs in nargsort without warning
Closes https://github.com/pandas-dev/pandas/issues/25439

> Probably want a whatsnew?

There is no behaviour change, just the warning, so thought it might not be needed. But can certainly add one. There is actually a broader issue here (also the reason that the tests are failing, eg IntervalArray.argsort is failing on data with NaNs): the `EA.argsort` API is not clearly defined (or not tested), and the check I edited here was originally specific for categorical data, so it also  assumed that NaNs would be sorted first (-1 in the codes). While in general, I think from an `argsort` method it is expected to sort them last.

Eg 

```
In [12]: pd.Categorical(['a', 'b', np.nan]).argsort()                   
Out[12]: array([2, 0, 1])

In [13]: pd.Categorical(['a', 'b', np.nan]).sort_values()                 
Out[13]: 
[a, b, NaN]
Categories (2, object): [a, b]
```

so in the above, `argsort` and `sort_values` have a different behaviour regarding missing values.


If we want to generalize this, this "sorting last" should be moved inside `Categorical.argsort`. But that would mean for the case where `core.sorting.nargsort` wants to put them first, you do this moving first/last twice (moving last inside Categorical.argsort, moving back first inside nargsort).
 
Unless we would add the `na_position` to the `EA.argsort` interface. @TomAugspurger would you be fine with catching this specific warning in our code for 0.24.2 (because my explanation above has too much impact for 0.24.2)? 
Or what is the reason for objecting filtering the warning? It's certainly not good practice, but showing this warning is just plain confusing for users, as there is nothing they should do anything about. Yeah, as a short-term fix that's fine.

On Sun, Mar 10, 2019 at 9:18 AM Joris Van den Bossche <
notifications@github.com> wrote:

> @TomAugspurger <https://github.com/TomAugspurger> would you be fine with
> catching this specific warning in our code for 0.24.2 (because my
> explanation above has too much impact for 0.24.2)?
> Or what is the reason for objecting filtering the warning? It's certainly
> not good practice, but showing this warning is just plain confusing for
> users, as there is nothing they should do anything about.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/25595#issuecomment-471310286>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ABQHIpfXQ3q-Jp8eEi3fI-md_00m2C-hks5vVRQ7gaJpZM4bjnoX>
> .
>
 OK, opened https://github.com/pandas-dev/pandas/pull/25629 for that can you merge master superseded by #26354 