我是python新手,尝试读取csv文件并生成销售报告。例如,我有一个如下所示的数据集
Category | State | Sales| Profits|
Clothes | California| 2389 | 608
Stationery| Georgia | 687 | 54
Gadgets | Washington| 324 | 90
在不使用熊猫的情况下,如何获得基于状态和类别的利润总和?这意味着当类别为“衣服”时,我需要将“销售额”和“利润”的值相加
我目前正在使用下面的代码,这需要大量的手动工作
with open(path,"r") as store_file:
reader = csv.DictReader(superstore_file)
total_sales_clothes = 0
total_sales_stationery = 0
total_sales_gadgets = 0
for row in reader:
category = row.get("Category")
if category=="Clothes":
sales_clothes = float(row.get("Sales"))
total_sales_clothes += sales_clothes
elif category=="Stationery":
sales_stationery = float(row.get("Sales"))
total_sales_stationery += sales_stationery
elif category=="Gadgets":
sales_office_gadgets = float(row.get("Sales"))
total_sales_gadgets += sales_gadgets
print("Total Sales for Clothes is: {0}".format(total_sales_clothes))
print("Total Sales for Stationery is {0}".format(total_sales_stationery))
print("Total Sales for Gadgets is {0}".format(total_sales_gadgets))
您可以使用python dict。这样,您就不必硬编码类别 python字典是一种非常有用的键值数据结构。 在您的情况下,关键是类别,价值是总销售额。 例如
编辑:请注意,您应该检查类别是否存在。如果是,只需添加销售值,否则只需分配值
如果您想遍历所有类别的dict和print sales,请使用
而且,尽管您提到您不想使用Pandas,但如果您打算长期使用这些类型的CSV数据集,我建议您检查它的使用情况。一旦你开始,你会发现它让你的工作变得多么容易。你将节省比你花在学习熊猫上更多的时间
相关问题 更多 >
编程相关推荐