Estoy teniendo muchos problemas al intentar envolver un método c ++ que devuelve una referencia constante a un vector de pares a una lista de tuplas de Python usando %typemap(out) . Actualmente tengo algo como esto: myclass.h: #inlcude using std::vector; class MyClass { private: const vector<pair> & _myvector; public: MyClass(const vector<pair> & myvector ); const […]
EDIT: resuelto, mi error; Explicado en mi respuesta. Tengo esto: std::vector < boost::shared_ptr > entities; Y trato de exponerlo a través de SWIG así: %include “boost_shared_ptr.i” %include “std_vector.i” %shared_ptr(Entity) %include namespace std { %template(EntityVector) vector<boost::shared_ptr >; }; %include Sin embargo, en Python las entidades terminan siendo una tupla: import MyModule print type(MyModule.cvar.entities) # Output: (type […]
¿Cómo puedo averiguar los vectores propios correspondientes a un valor propio en particular? Tengo una matriz estocástica (P), uno de cuyos valores propios es 1. Necesito encontrar el vector propio correspondiente al valor propio 1. La función scipy scipy.linalg.eig devuelve la matriz de valores propios y vectores propios. D, V = scipy.linalg.eig(P) Aquí D (conjunto […]
Estoy luchando un poco con el concepto de que se dice que NumPy está vectorizando sus operaciones de matriz aritmética: ¿Supera el GIL de Python ya que parte de NumPy se implementa en C? Además, ¿cómo funciona Numexpr entonces? Si lo comprendo correctamente, ejecuta el código a través de un JIT de optimización y habilita […]
Sé que el hashing de características (hashing-trick) se utiliza para reducir la dimensionalidad y manejar la escasez de vectores de bits, pero no entiendo cómo funciona realmente. ¿Alguien me puede explicar esto? ¿Hay alguna biblioteca de Python disponible para hacer hash de características? Gracias.
Estoy tratando de trazar vectores en 3d usando matplotlib. Utilicé el siguiente código basado en un ejemplo anterior de trazado de vectores 2D, pero añadí componentes para vectores 3D. #!/usr/bin/python import numpy as np import matplotlib.pyplot as plt soa =np.array( [ [0,0,1,1,-2,0], [0,0,2,1,1,0],[0,0,3,2,1,0],[0,0,4,0.5,0.7,0]]) X,Y,Z,U,V,W = zip(*soa) plt.figure() ax = plt.gca() ax.quiver(X,Y,Z,U,V,W,angles=’xyz’,scale_units=’xyz’,scale=1,color=’b’) ax.set_xlim([-1,10]) ax.set_ylim([-1,10]) ax.set_zlim([10,1]) plt.draw() […]
Esto está muy relacionado con esta pregunta. Independientemente de si esto es o no una práctica de encoding, me he encontrado con un código que se ve así prueba.hh #include using std::vector; class Test { public: vector data; }; Estoy intentando cambiar esto usando swig3.0 usando el siguiente archivo de interfaz test.i %module test_swig %include […]
¿Cómo paso una lista de Python de mi tipo de objeto ClassName a una función de C ++ que acepta un vector ? Lo mejor que encontré es algo como esto: ejemplo . Desafortunadamente, el código falla y parece que no puedo entender por qué. Esto es lo que usé: template void python_to_vector(boost::python::object o, vector* […]
¿Cómo se puede normalizar elegantemente una lista de vectores, en NumPy? Aquí hay un ejemplo que no funciona: from numpy import * vectors = array([arange(10), arange(10)]) # All x’s, then all y’s norms = apply_along_axis(linalg.norm, 0, vectors) # Now, what I was expecting would work: print vectors.T / norms # vectors.T has 10 elements, as […]
Estoy obteniendo ‘module’ object has no attribute ‘Vector3’ error en mi código de Python simple. Este es el archivo rightAngle.py import meep as mp import math cell = mp.Vector3(16, 8, 0) geometry = [mp.Bloack(mp.Vector3(1e20, 1, 1e20), center = mp.Vector3(0, 0), material = mp.Medium(epsilon = 12))] sources = [mp.Source(mp.ContinuousSource(frequency = 0.15), component = mp.Ez, center = […]