Articles of los

Estilo de código: “aplanar” el espacio de nombres de un paquete

Mi jerarquía de paquetes: InstrumentController/ __init__.py instruments/ __init__.py _BaseInstrument.py Keithley2000.py # etc… El contenido de los archivos del instrumento: # _BaseInstrument.py class _BaseInstrument(object): “””Base class for instruments””” # etc… # Keithley2000.py from InstrumentController.instruments._BaseInstrument import _BaseInstrument class Keithley2000(_BaseInstrument): # etc… Quiero que mis usuarios puedan acceder a las clases sin tener que profundizar en una jerarquía […]

pandas reemplazan múltiples valores de una columna

En una columna, los niveles de riesgo quiero reemplazar Pequeño con 1, Medio con 5 y Alto con 15. Intenté: dfm.replace({‘risk’:{‘Small’: ‘1’}},{‘risk’:{‘Medium’: ‘5’}},{‘risk’:{‘High’: ’15’}}) Pero solo el médium fue reemplazado. Qué está mal ?

¿Una forma sencilla de anular los métodos predeterminados en las clases personalizadas de Python?

Tengo una clase llamada celular: class Cell: def __init__(self, value, color, size): self._value = value self._color = color self._size = size # and other methods… Cell._value almacenará una cadena, un entero, etc. (para lo que esté usando ese objeto). Quiero que todos los métodos predeterminados que normalmente usarían el “valor” de un objeto usen el […]

Cómo remodelar este dataframe

Necesito remodelar el dataframe de esta manera: nam code date1 date2 0 a 1 1/1 1/2 1 b 3 3/4 4/5 pero df.stack parece inútil en esta situación. Salida deseada: nam code date 0 a 1 1/1 1 a 1 1/2 2 b 3 3/4 3 b 3 4/5

Carga dinámica de clases en Python 2.6: RuntimeWarning: no se encontraron ‘complementos’ del módulo principal al manejar la importación absoluta

Estoy trabajando en un sistema de complementos donde los módulos de complementos se cargan así: def load_plugins(): plugins=glob.glob(“plugins/*.py”) instances=[] for p in plugins: try: name=p.split(“/”)[-1] name=name.split(“.py”)[0] log.debug(“Possible plugin: %s”, name) f, file, desc=imp.find_module(name, [“plugins”]) plugin=imp.load_module(‘plugins.’+name, f, file, desc) getattr(plugin, “__init__”)(log) instances=instances+plugin.get_instances() except Exception as e: log.info(“Failed to load plugin: “+str(p)) log.info(“Error: %s ” % (e)) […]

Cómo encontrar el complemento de dos marcos de datos.

dados dos grandes marcos de datos, ¿hay algún código conciso y eficiente (evitar el uso directo de cualquier for loop ) que me permita obtener el complemento de estos dos marcos de datos? Para mí, la forma más directa es calcular la union-intersection como se muestra en el ejemplo ingenuo a continuación, pero no sé […]

Cómo convertir números representados como caracteres para abreviar en numéricos en Python

Tengo una columna en mi dataframe que tiene valores como ‘3.456B’ que en realidad representa 3.456 mil millones (y una notación similar para millones). ¿Cómo convertir esta forma de cadena para corregir la representación numérica? Esto muestra el dataframe: import pandas as pd data_csv = pd.read_csv(‘https://biz.yahoo.com/p/csv/422conameu.csv’) data_csv Este es un valor de muestra: data_csv[‘Market Cap’][0] […]

Usando el nombre de la columna como un nuevo atributo en pandas

Tengo la siguiente estructura de datos Date Agric Food 01/01/1990 1.3 0.9 01/02/1990 1.2 0.9 Me gustaría convertirlo en el formato. Date Sector Beta 01/01/1990 Agric 1.3 01/02/1990 Agric 1.2 01/01/1990 Food 0.9 01/02/1990 Food 0.9 Si bien estoy seguro de que puedo hacer esto de una manera complicada, ¿hay alguna forma de hacerlo en […]

Función estilo pandas para hignlight columnas específicas

He estado tratando de escribir una función para usar con el estilo de pandas. Quiero columnas altas que especifique en los argumentos. Esto no es muy elegante pero por ejemplo: data = pd.DataFrame(np.random.randn(5, 3), columns=list(‘ABC’)) def highlight_cols(df, cols, colcolor = ‘gray’): for col in cols: for dfcol in df.columns: if col == cols: color = […]

Python Class __div__ problema

Las tuplas representan fracciones. Estoy tratando de dividir las fracciones multiplicando por el recíproco class Test(): def __init__(self): self._x=(1,2) def __div__(self,div_fraction): return (self._x[0]*div_fraction[1],self._x[1]*div_fraction[0]) y=Test() z=y/(1,3) print(z) Me da: Traceback (most recent call last): File “E:/test.py”, line 8, in z=y/(1,3) TypeError: unsupported operand type(s) for /: ‘Test’ and ‘tuple’ Sin embargo, cuando cambio __div__ a __mul__ […]