Почему numpy array не поддерживает цепную работу и какие-либо предложения по улучшению? - PullRequest
0 голосов
/ 28 июня 2019

Под цепной операцией я подразумеваю, что цепная операция может использовать последний фрейм данных, созданный предыдущими операциями.Например, рассмотрим следующее:

array.ChainableOpA().ChainableOpB().ChainableOpC()

Таким образом, мы можем продолжать делать вещи «постоянно» и более четко.Такой дизайн представлен в pandas.

numpy, имеет много функций, которые не являются «методами» класса ndarray.Например, вы можете позвонить numpy.nanmean, но нет array.nanmean.Этот вид дизайна в NumPy запрещает цепные операции.

1) Так с чего бы это?Это из-за проблем с производительностью или из-за дурака?

2) И есть ли у нас решение для этого?Я могу подумать о создании подкласса ndarray и предоставлении методов, которые вы хотите, но кажется утомительным.И я обнаружил, что после того, как вы создали подкласс ndarray, среда IDE, которую я использовал, PyCharm, не может распознать ее как массив для отображения в SciView.

...