product <- c("Laptop", "Smartphone", "Tablet", "Headphones",
"Smartwatch", "Printer", "Keyboard", "Monitor")
unit_price <- c(185000, 95000, 68000, 12500, 28000, 42000, 8500, 56000)
units_sold <- c(35, 80, 45, 160, 90, 38, 210, 52)
unit_cost <- c(150000, 76000, 52000, 6500, 19000, 33000, 4200, 43000)
advertising_cost <- c(180000, 220000, 90000, 60000, 85000, 45000, 50000, 75000)
orders <- c(35, 78, 44, 150, 88, 36, 200, 50)
returned_oders <- c(2, 5, 2, 12, 6, 3, 8, 2)
product_data <- data.frame(product, unit_price, units_sold, unit_cost,
advertising_cost, orders, returned_oders)
head(product_data, 5)
dim(product_data)
names(product_data)
str(product_data)
product_data$revenue <- product_data$unit_price * product_data$units_sold
product_data$cogs <- product_data$unit_cost * product_data$units_sold
product_data$gross_profit <- product_data$revenue - product_data$cogs
product_data$net_contribution <- product_data$gross_profit -
product_data$advertising_cost
product_data$profit_margin <- product_data$net_contribution /
product_data$revenue * 100
product_data$return_rate <- product_data$returned_oders /
product_data$orders * 100
print(product_data)
sum(product_data$revenue)
sum(product_data$cogs)
sum(product_data$gross_profit)
sum(product_data$net_contribution)
# mean and median
mean(product_data$net_contribution)
median(product_data$net_contribution)
# Highest and lowest net contribution
max(product_data$net_contribution)
min(product_data$net_contribution)
# Maximum and minimum return rates
max(product_data$return_rate)
min(product_data$return_rate)
# Ascending order
sort(product_data$net_contribution)
# Range
range_value <- max (product_data$net_contribution) -
min (product_data$net_contribution)
print (range_value)
product_data$profitability <- NA
for (i in 1:nrow(product_data)) {
if(product_data$net_contribution[i] >= 750000) {
product_data$profitability[i] <- "High Performer"
} else if (product_data$net_contribution[i] >= 400000) {
product_data$profitability[i] <- "Moderate Performer"
} else {
product_data$profitability[i] <- "Low Performer"
}
}
product_data$return_risk <- NA
for (i in 1:nrow(product_data)) {
if (product_data$return_rate[i] > 5) {
product_data$return_risk[i] <- "High Return Risk"
} else {
product_data$return_risk[i] <- "Acceptable Return Rate"
}
}
report <- product_data[, c("product", "net_contribution", "profit_margin",
"return_rate", "profitability", "return_risk")]
print (report)
for (i in 1:nrow (product_data)) {
cat ("product:",product_data$product[i],
"|Revenue:", product_data$revenue[i],
"|Net contribution:", product_data$net_contribution[i], "\n")
}
high <- 0
moderate <- 0
low <- 0
for (i in 1:nrow(product_data)) {
if (product_data$profitability[i] == "High Performer") {
high <- high + 1
} else if (product_data$profitability[i] == "Moderate Performer") {
moderate <- moderate + 1
} else {
low <- low + 1
}
}
cat("High Performers:", high, "\n")
cat("Moderate Performers:", moderate, "\n")
cat("Low Performers:", low, "\n")
i <- 1
attention_count <- 0
while (i <= nrow(product_data)) {
if (product_data$net_contribution[i] < 400000 || product_data$return_rate[i] > 5) {
cat("Needs attention:", product_data$product[i], "\n")
attention_count <- attention_count + 1
}
i <- i + 1
}
cat("Total products requiring Needing attention:", attention_count, "\n")
calculate_contribution <- function(unit_price, units_sold, unit_cost, advertising_cost) {
revenue <- unit_price * units_sold
cogs <- unit_price * units_sold
gross_profit <- revenue - cogs
net_contribution <- gross_profit - advertising_cost
return(net_contribution)
}
classify_product <- function(net_contribution) {
if (net_contribution >= 750000) {
return ("High Performer")
} else if (net_contribution >= 400000) {
return ("Moderate Performer")
} else {
return ("Low Performer")
}
}
#Laptop
laptop_profit <- calculate_contribution(185000, 35, 150000, 180000)
laptop_category <- classify_product (laptop_profit)
cat("Laptop contribution:", laptop_profit, "\n")
cat("laptop classification:", laptop_category, "\n")
#printer
printer_profit <- calculate_contribution(42000, 38, 33000, 45000)
printer_category <- classify_product (printer_profit)
cat("printer contribution:", printer_profit, "\n")
cat("printer classification:", printer_category, "\n")
barplot(product_data$net_contribution,
names.arg = product_data$product,
main = "Net Contribution by Product",
xlab = "Products",
ylab = "Net Contribution (Rs.)",
col = "steelblue")
hist(product_data$net_contribution,
main = "Distribution of Net Contribution",
xlab = "Net Contribution (Rs.)",
ylab = "frequecycy",
col = "lightgreen",
border = "black")
plot(product_data$advertising_cost, product_data$net_contribution,
main = "Advertising Cost vs Net Contribution",
xlab = "Advertising Cost (Rs.)",
ylab = "Net Contribution (Rs.)",
pch = 19,
col = "darkblue")
text(product_data$advertising_cost, product_data$net_contribution,
labels = product_data$product,
pos = 3)
write.csv(product_data, "product_performance.csv",
row.names = FALSE)
cat ( "csv file exported succsusfuly. \n" )
To embed this project on your website, copy the following code and paste it into your website's HTML: