如何使用apt-get卸载cython
时间: 2024-01-12 11:03:55 浏览: 26
可以使用以下命令卸载cython:
```
sudo apt-get remove cython
```
如果你想删除cython及其相关的配置文件,可以使用以下命令:
```
sudo apt-get purge cython
```
另外,如果你想同时删除cython的依赖包,可以使用以下命令:
```
sudo apt-get autoremove cython
```
请注意,这些命令需要管理员权限才能执行。
相关问题
自适应均线系统 python_Python熊猫考夫曼自适应移动平均值(KAMA)---熊猫或Cython中的递归计算...
KAMA是一种自适应移动平均值,它的计算方法是将价格数据的波动性考虑在内,以尽可能减小噪声对移动平均线的影响。下面是一个Python实现KAMA的示例代码:
```python
import pandas as pd
import numpy as np
def kama(data, n=10, pow1=2, pow2=30):
'''Kaufman's Adaptive Moving Average (KAMA)
data - pandas DataFrame
n - number of periods for efficiency ratio
pow1 - number of periods for fast EMA
pow2 - number of periods for slow EMA'''
abs_diff = abs(data - data.shift(1))
er = abs_diff / pd.stats.moments.rolling_sum(abs_diff, n)
sc = ((er*(2.0/(pow1+1)-2.0/(pow2+1.0))+2/(pow2+1.0))**2.0).values
kama = np.zeros(sc.size)
N = len(kama)
first_value = True
for i in range(N):
if np.isnan(sc[i]):
kama[i] = np.nan
else:
if first_value:
kama[i] = data[i]
first_value = False
else:
kama[i] = kama[i-1] + sc[i] * (data[i] - kama[i-1])
return kama
```
上述代码使用了Pandas和Numpy库,其中的er表示效率比率,sc为平滑常数,kama为自适应移动平均值。该函数使用递归计算,以加快计算速度。
你也可以使用Cython来加速计算。下面是一个Cython版本的kama计算代码:
```cython
cimport numpy as np
import numpy as np
def kama(np.ndarray[np.float64_t, ndim=1] data, int n=10, int pow1=2, int pow2=30):
cdef np.ndarray[np.float64_t, ndim=1] abs_diff, er, sc, kama
cdef int N, i
cdef bint first_value
abs_diff = np.abs(data - np.roll(data, 1))
er = abs_diff / pd.stats.moments.rolling_sum(abs_diff, n)
sc = ((er*(2.0/(pow1+1)-2.0/(pow2+1.0))+2/(pow2+1.0))**2.0).values
kama = np.zeros(sc.size)
N = len(kama)
first_value = True
for i in range(N):
if np.isnan(sc[i]):
kama[i] = np.nan
else:
if first_value:
kama[i] = data[i]
first_value = False
else:
kama[i] = kama[i-1] + sc[i] * (data[i] - kama[i-1])
return kama
```
使用Cython可以使得计算速度更快,但需要使用Cython的命令来编译这段代码,以便生成优化的机器码。
-fPIC cython
-fPIC是一个编译选项,用于在编译共享库时生成位置无关的代码。它告诉编译器生成与特定内存位置无关的代码,以便该库可以在不同的内存地址加载和运行。在Cython中,使用该选项可以在将Cython代码编译为共享库时确保代码的可移植性和兼容性。
如果你在使用Cython编译时遇到了缺少-fPIC选项的错误,你可以将其添加到你的编译命令中。例如,在使用GCC编译时,你可以这样使用-fPIC选项:
```
$ cython my_module.pyx --cplus
$ g++ -c -fPIC my_module.cpp -o my_module.o
$ g++ -shared my_module.o -o my_module.so
```
这个例子中,我们首先将Cython代码编译为C++代码,然后使用g++编译C++代码并生成位置无关的目标文件。最后,我们将目标文件链接为共享库。
希望这个回答能够解决你的问题!如果还有其他问题,请随时提问。