Articles of dataframe

Copia el dataframe pandas para excel usando openpyxl

Tengo un formateo complicado guardado en un archivo de plantilla en el que necesito guardar datos de un dataframe de pandas. El problema es que cuando uso pd.to_excel para guardar en esta hoja de trabajo, los pandas sobrescriben el formato. ¿Hay alguna manera de “pegar valores” de alguna manera desde la hoja de cálculo? Estoy […]

El valor de verdad de una serie es ambiguo: error al llamar a una función

Lo sé siguiendo el error ValueError: El valor de verdad de una serie es ambiguo. Utilice a.empty, a.bool (), a.item (), a.any () o a.all (). Se ha preguntado hace mucho tiempo. Sin embargo, estoy intentando crear una función básica y devolver una nueva columna con df[‘busy’] con 1 o 0 . Mi función se […]

Vectorización de un bucle basado en el orden de los valores de una serie.

Esta pregunta se basa en una pregunta anterior que respondí. La entrada se ve como: Index Results Price 0 Buy 10 1 Sell 11 2 Buy 12 3 Neutral 13 4 Buy 14 5 Sell 15 Necesito encontrar cada secuencia de Compra-Venta (ignorando los valores extra de Compra / Venta fuera de secuencia) y calcular […]

Dividir una lista en una celda de Pandas en múltiples columnas

Tengo un dataframe Pandas realmente simple donde cada celda contiene una lista. Me gustaría dividir cada elemento de la lista en su propia columna. Puedo hacerlo exportando los valores y luego creando un nuevo dataframe . Esto no parece ser una buena forma de hacerlo, especialmente si mi dataframe tenía una columna aparte de la […]

¿Cómo calcular la diferencia de fecha en pyspark?

Tengo datos como este: df = sqlContext.createDataFrame([ (‘1986/10/15’, ‘z’, ‘null’), (‘1986/10/15’, ‘z’, ‘null’), (‘1986/10/15’, ‘c’, ‘null’), (‘1986/10/15’, ‘null’, ‘null’), (‘1986/10/16’, ‘null’, ‘4.0’)], (‘low’, ‘high’, ‘normal’)) Quiero calcular la diferencia de fecha entre low columna low y el 2017-05-02 y reemplazar low columna low con la diferencia. He intentado soluciones relacionadas en stackoverflow pero ninguna de […]

Manera vectorizada de contar las ocurrencias de una cadena en cualquiera de las dos columnas

Tengo un problema que es similar a esta pregunta , pero lo suficientemente diferente como para que no se pueda resolver con la misma solución … Tengo dos marcos de datos, df1 y df2 , como este: import pandas as pd import numpy as np np.random.seed(42) names = [‘jack’, ‘jill’, ‘jane’, ‘joe’, ‘ben’, ‘beatrice’] df1 […]

la comparación de pandas genera TypeError: no se puede comparar una matriz dtyped con un escalar de tipo

Tengo la siguiente estructura para mi dataframe: Index: 1008 entries, Trial1.0 to Trial3.84 Data columns (total 5 columns): CHUNK_NAME 1008 non-null values LAMBDA 1008 non-null values BETA 1008 non-null values HIT_RATE 1008 non-null values AVERAGE_RECIPROCAL_HITRATE 1008 non-null values chunks=[‘300_321′,’322_343′,’344_365′,’366_387′,’388_408′,’366_408′,’344_408′,’322_408′,’300_408’] lam_beta=[(lambda1,beta1),(lambda1,beta2),(lambda1,beta3),…(lambda1,beta_n),(lambda2,beta1),(lambda2,beta2)…(lambda2,beta_n),……..] my_df.ix[my_df.CHUNK_NAME==chunks[0]&my_df.LAMBDA==lam_beta[0][0]] Quiero obtener las filas del Dataframe para un trozo en particular, digamos chunks [0] […]

Obteniendo un campo específico de la fila elegida en Pyspark DataFrame

Tengo un Spark DataFrame construido a través de pyspark desde un archivo JSON como sc = SparkContext() sqlc = SQLContext(sc) users_df = sqlc.read.json(‘users.json’) Ahora, quiero acceder a los datos de un usuario elegido , donde este es su campo _id. puedo hacer print users_df[users_df._id == chosen_user].show() y esto me da la fila completa del usuario. […]

Encontrar las columnas N superiores para cada fila en el dataframe

dado un dataframe con una columna descriptiva y X columnas numéricas, para cada fila me gustaría identificar las columnas N superiores con los valores más altos y guardarlas como filas en un nuevo dataframe. Por ejemplo, considere el siguiente dataframe: df = pd.DataFrame() df[‘index’] = [‘A’, ‘B’, ‘C’, ‘D’,’E’, ‘F’] df[‘option1’] = [1,5,3,7,9,3] df[‘option2’] = […]

Python Pandas DataFrame copy (deep = False) vs copy (deep = True) vs ‘=’

¿Podría alguien explicarme una diferencia entre df2 = df1 df2 = df1.copy() df3 = df1.copy(deep=False) He intentado todas las opciones y he hecho lo siguiente: df1 = pd.DataFrame([1,2,3,4,5]) df2 = df1 df3 = df1.copy() df4 = df1.copy(deep=False) df1 = pd.DataFrame([9,9,9]) y volvió como sigue: df1: [9,9,9] df2: [1,2,3,4,5] df3: [1,2,3,4,5] df4: [1,2,3,4,5] Por lo tanto, […]