Untitled

 avatar
unknown
plain_text
18 days ago
1.2 kB
2
Indexable
import pandas as pd

# Sample data
data = {
    'Salesperson': ['John', 'Jane', 'Tom', 'Alice', 'Mike'],
    'January Sales': [5000, 4000, 6000, 4500, 7000],
    'February Sales': [5500, 4500, 6200, 4800, 7500],
    'March Sales': [6000, 5000, 7000, 5500, 8000],
    'Sales Target': [15000, 15000, 18000, 16000, 20000]
}

# Create DataFrame
df = pd.DataFrame(data)

# Calculate total sales
df['Total Sales'] = df[['January Sales', 'February Sales', 'March Sales']].sum(axis=1)

# Calculate commission (5% of total sales)
df['Commission'] = df['Total Sales'] * 0.05

# Calculate bonus
df['Bonus'] = df['Total Sales'].apply(lambda x: 500 if x >= 1.1 * df['Sales Target'][df['Total Sales'] == x].values[0] else 0)

# Check if target was met
df['Target Met'] = df['Total Sales'] >= df['Sales Target']
df['Target Met'] = df['Target Met'].apply(lambda met: 'Yes' if met else 'No')

# Rank salespeople by total sales
df['Rank'] = df['Total Sales'].rank(ascending=False, method='dense').astype(int)

# Sort by rank
df = df.sort_values('Rank')

# Display results
print(df[['Salesperson', 'Total Sales', 'Commission', 'Bonus', 'Target Met', 'Rank']])

# Export to a CSV file (optional)
df.to_csv('sales_performance_report.csv', index=False)
Leave a Comment