我有一组CSV数据,我需要使用Visual studio代码计算总数量和利润。已经有一组代码提供给我了,所以我需要进行计算。只有N列(第13行)的利润和O列(第14行)的数量应作为计算的一部分。CSV格式的数据
这是为我提供的代码:
fp = Path.cwd()/"superstore_transaction.csv"
with fp.open(mode="r", encoding="UTF-8", newline="") as file:
reader = csv.reader(file)
next(reader)
cluster1 = []
cluster2 = []
cluster3 = []
for row in reader:
if row[4] == "Cluster 1":
cluster1.append([row[13], row[14]])
elif row[4] == "Cluster 2":
cluster2.append([row[13], row[14]])
else:
cluster3.append([row[13], row[14]])
我尝试使用For循环,但它不起作用。我想总的来说,我只是对已经提供给我的整体代码感到困惑,我只局限于一些代码,我可以使用它们来帮助计算总利润
看起来profit
列具有百分比值,因此您需要删除%
符号,以便将其转换为int
或float
值进行计算。
下面是cluster1
的一个示例,因此您可以手动对其他示例执行相同的操作,或者根据需要循环遍历它们:
cluster1_profit = sum(float(sub_c1[0].replace('%', '')) for sub_c1 in cluster1)
cluster1_quantity = sum(int(sub_c1[1]) for sub_c1 in cluster1)
在这里,我只计算了利润和数量的总和,所以这取决于你想如何计算总数。
有更好的方法可以做到这一点,使用pandas或numpy,这将使它更容易。