Неправильный компилятор Java при включении модуля Java в качестве зависимости в Android Studio

Для инвертирования логической серии используйте ~s :

In [7]: s = pd.Series([True, True, False, True])

In [8]: ~s
Out[8]: 
0    False
1    False
2     True
3    False
dtype: bool

Использование Python2.7, NumPy 1.8.0, Pandas 0.13.1:

In [119]: s = pd.Series([True, True, False, True]*10000)

In [10]:  %timeit np.invert(s)
10000 loops, best of 3: 91.8 µs per loop

In [11]: %timeit ~s
10000 loops, best of 3: 73.5 µs per loop

In [12]: %timeit (-s)
10000 loops, best of 3: 73.5 µs per loop

Начиная с Pandas 0.13.0, Series больше не являются подклассами numpy.ndarray; теперь они являются подклассами pd.NDFrame. Это может иметь какое-то отношение к тому, почему np.invert(s) работает не так быстро, как ~s или -s.

Предостережение: timeit результаты могут различаться в зависимости от многих факторов, включая аппаратное обеспечение, компилятор, ОС , Python, NumPy и Pandas.

13
задан StuStirling 14 July 2014 в 17:08
поделиться