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

3df52oht  于 2023-01-15  发布在  Python
关注(0)|答案(1)|浏览(140)

我有一组CSV数据,需要用Visual studio代码计算总量和利润,已经给我提供了一组代码,所以我需要计算,只计算N列(第13行)的利润和O列(第14行)的数量the data in 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循环,但它不起作用。我想总的来说,我只是对已经提供给我的整体代码感到困惑,我只限于使用一些代码来帮助计算总利润

jjjwad0x

jjjwad0x1#

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)

为此,我只做了利润和数量的总和,所以这取决于你想如何计算你的总数。
有更好的方法来做到这一点,使用pandasnumpy,这将使它更容易。

相关问题