¿Existe una implementación en la que pueda unir dos matrices en función de sus claves? Hablando de eso, ¿es la forma canónica de almacenar claves en una de las columnas NumPy (NumPy no tiene un atributo 'id' o 'rownames')?SQL join o la función merge() de R en NumPy?
11
A
Respuesta
12
Si desea utilizar sólo numpy, puede utilizar matrices estructuradas y la función lib.recfunctions.join_by
(ver http://pyopengl.sourceforge.net/pydoc/numpy.lib.recfunctions.html). Un pequeño ejemplo:
In [1]: import numpy as np
...: import numpy.lib.recfunctions as rfn
...: a = np.array([(1, 10.), (2, 20.), (3, 30.)], dtype=[('id', int), ('A', float)])
...: b = np.array([(2, 200.), (3, 300.), (4, 400.)], dtype=[('id', int), ('B', float)])
In [2]: rfn.join_by('id', a, b, jointype='inner', usemask=False)
Out[2]:
array([(2, 20.0, 200.0), (3, 30.0, 300.0)],
dtype=[('id', '<i4'), ('A', '<f8'), ('B', '<f8')])
Otra opción es utilizar pandas (documentation). No tengo experiencia con él, pero proporciona estructuras de datos y funcionalidades más potentes que el estándar numpy, "para hacer que trabajar con datos" relacionales "o" etiquetados "sea fácil e intuitivo". Y ciertamente tiene funciones de unión y fusión (por ejemplo, ver http://pandas.sourceforge.net/merging.html#joining-on-a-key).
Cuestiones relacionadas
- 1. python (o numpy) equivalente de coincidencia en R
- 2. join or merge with overwrite in pandas
- 3. pandas join/merge/concat dos dataframes
- 4. Transact-SQL - ¿sub consulta o left-join?
- 5. Numpy for R user?
- 6. Cuándo utilizar SQL natural join en lugar de join .. on?
- 7. Problemas con la instrucción MERGE SQL Server
- 8. commit-pull-merge-push o pull-merge-commit-push?
- 9. SQL Spatial Join
- 10. php sql update join
- 11. SQL INNER JOIN pregunta
- 12. es 'LEFT OUTER JOIN' equivale a 'Join' en Microsoft SQL
- 13. ¿Cuál es el equivalente de Matlab/Octave o R 'merge' (o 'expand.grid')?
- 14. ¿LINQ Join Operador usa uniones anidadas de Loop, Merge o HashSet?
- 15. Ayuda con la declaración de SQL (JOIN)
- 16. sql - left join - count
- 17. Simple SQL Join Understanding?
- 18. sql join two table
- 19. cómo usar merge() para actualizar una tabla en R
- 20. INNER JOIN vs LEFT JOIN rendimiento en SQL Server
- 21. LIMITAR un JOIN de SQL
- 22. Consulta SQL JOIN con la Tabla
- 23. Futuro de "Registros lógicos" en SQL Merge Replication
- 24. SQL JOIN vs IN performance?
- 25. Inserción/actualización masiva de servidor Sql frente a MERGE en el escenario de inserción o actualización
- 26. Función de cronómetro en R
- 27. INNER JOIN en UPDATE sql para DB2
- 28. ¿Vale la pena la asignación O/R?
- 29. SQL CASE vs JOIN efficiency
- 30. T-SQL MERGE: descubriendo qué acción tomó
Ah, se olvidó de las 'recfunctions'. Actualmente estoy evaluando pandas ... tantas opciones ... Gracias. – hatmatrix