Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Clustering com numpy e cython

2,273 views

Published on

  • Login to see the comments

  • Be the first to like this

Clustering com numpy e cython

  1. 1. Clustering com numpy e Cython Anderson Berg XIII Encontro do PUG-PE
  2. 2. Agrupamento de dados
  3. 3. K-Means
  4. 4. Matrizes
  5. 5. Exemplo simples>>> from numpy import *>>>a = arange(10).reshape(2,5)>>>aarray([[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]])
  6. 6. Criação de arrays>>> a = array( [2,3,4] )>>> b = array( [ (1.5,2,3), (4,5,6) ] )>>> barray([[ 1.5, 2. , 3. ], [ 4. , 5. , 6. ]])>>> zeros( (3,4) )array([[0., 0., 0., 0.], [0., 0., 0., 0.], [0., 0., 0., 0.]])>>> ones( (2,3,4), dtype=int16 )array([[[ 1, 1, 1, 1], [ 1, 1, 1, 1], [ 1, 1, 1, 1]], [[ 1, 1,1, 1], [ 1, 1, 1, 1], [ 1, 1, 1, 1]]], dtype=int16)
  7. 7. Outras Operações>>> b = arange( 4 )>>> b**2array([0, 1, 4, 9])>>> a = random.random((2,3))>>> aarray([[ 0.6903007 , 0.39168346, 0.16524769], [ 0.48819875, 0.77188505, 0.94792155]])
  8. 8. Ainda outras operações>>> a.sum()3.4552372100521485>>> a.min()0.16524768654743593>>> a.max()0.9479215542670073>>> a[:,1]array([0.39168346, 0.77188505])>>> sum(a[:,1])1.1635685099999999
  9. 9. Primeiros Passoshelloworld.pyx:print "Hello World"setup.py:from distutils.core import setupfrom distutils.extension import Extensionfrom Cython.Distutils import build_extsetup( cmdclass = {build_ext: build_ext}, ext_modules = [Extension("helloworld",["helloworld.pyx"])] )$ python setup.py build_ext --inplace>>> import helloworldHello World
  10. 10. Advanced Modedef primes(int kmax): cdef int n, k, i cdef int p[1000] result = [] if kmax > 1000: kmax = 1000 k = 0 n = 2 while k < kmax: i = 0 while i < k and n % p[i] != 0: i = i + 1 if i == k: p[k] = n k = k + 1 result.append(n) n = n + 1 return result
  11. 11. Sem Cython Com Cython
  12. 12. Clustering com numpy e Cython Anderson Berg - @berg_pe XIII Encontro do PUG-PE

×