Encuentre el porcentaje de ganancias y pérdidas en la hoja de Excel dada usando Pandas

En estos artículos, analicemos cómo extraer datos del archivo de Excel y encontrar el porcentaje de ganancias y pérdidas en los datos dados. Supongamos que nuestro archivo de Excel parece que tenemos que extraer el precio de venta y el precio de costo de la columna y encontrar el porcentaje de ganancia y pérdida y almacenarlo en una nueva columna de DataFrame.

Para obtener el archivo de Excel utilizado anteriormente, haga clic aquí.

Entonces, analicemos el enfoque:

Paso 1: Importe el módulo requerido y lea los datos de Excel.

Python3

# importing module
  
import pandas as pd
  
# Creating df
# Reading data from Excel
data = pd.read_excel("excel_work/book_sample.xlsx")
print("Original DataFrame")
data

Producción :

Paso 2: Cree una nueva columna en DataFrame para el porcentaje de ganancias y pérdidas de la tienda.

Python3

# Create column for profit and loss
data['Profit percent']= None
data['Loss percent'] = None
data

Producción :

Paso 3: establezca el índice para el precio de venta, el precio de costo, el porcentaje de ganancia y el porcentaje de pérdida.

Python3

# set index
index_selling = data.columns.get_loc('Selling Price')
index_cost = data.columns.get_loc('Cost price')
index_profit = data.columns.get_loc('Profit percent')
index_loss = data.columns.get_loc('Loss percent')
  
print(index_selling, index_cost, index_profit, index_loss)

Producción :

2 3 4 5

Paso 4: Calcule el porcentaje de pérdidas y ganancias de acuerdo con el índice de cada columna.

profit = (SP) - (CP)
profit % = (profit/ CP × 100)%
Loss = (CP) - (SP)
Loss % = (loss/ CP × 100)%

Python3

# Loop for accessing every index in DataFrame
# and compute Profit % and loss %
# and store into new column in DataFrame
for row in range(0, len(data)):
    if data.iat[row, index_selling] > data.iat[row, index_cost]:
        profit = data.iat[row, index_selling] - data.iat[row, index_cost]
        data.iat[row, index_profit] = (profit/data.iat[row, index_cost]*100)
  
    else:
        loss = abs(data.iat[row, index_cost]-data.iat[row, index_selling])
        data.iat[row, index_loss] = (loss/data.iat[row, index_cost]*100)
  
data

Producción :

Publicación traducida automáticamente

Artículo escrito por kumar_satyam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *