如何在python中计算CSV数据的特定行?



我有一组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列具有百分比值,因此您需要删除%符号,以便将其转换为intfloat值进行计算。

下面是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,这将使它更容易。

相关内容

  • 没有找到相关文章

最新更新