gpt4 book ai didi

python - 计算 CSV 中的条目数?

转载 作者:行者123 更新时间:2023-12-01 01:52:30 25 4
gpt4 key购买 nike

我刚刚学习 Python,并且在使用该语言的列表功能时遇到了一些问题。我有一个名为 purchases.csv 的 .csv 文件,我需要用它做四件事:

  1. 输出“采购订单”总数,即计算 csv 中的条目总数
  2. 输出平均购买金额,显示三位小数。
  3. 输出超过 1,800 次的购买总数
  4. 输出超过 1,800 次的平均购买金额(小数点后三位)。

输出需要类似于:

Total Number of Purchases: xxxx
Amount of Average Purchase: xxxx
Number of Purchase Orders over $1,800: xxxx
Amount of Average Purchases over $1,800: xxxx

到目前为止我已经写了

import csv

with open('purchases.csv') as csvfile:
readCSV = csv.reader(csvfile,delimiter=',')
total_purchases=[]
for row in readCSV:
total=row[0]
total_purchases.append(total)

print(total_purchases)

my_sum=0
for x in home_runs:
my_sum=my_sum+int(x)
print("The total number of purchases was: ", my_sum)

要查找购买总数,但我碰壁,似乎无法计算出其余部分!我希望得到任何帮助和指导...我只是想不通!

最佳答案

您需要一系列单独的类似 for 循环,但使用 if 语句仅有条件地计算总和。

假设 row[0] 是您的价格列:

var sumAbove1800 = 0;
var countAbove1800 = 0;
var totalSum = 0;
var totalPurchases = 0;
for row in readCSV:
var price = float(row[0])
totalPurchases = totalPurchases + 1;
totalSum = totalSum + price;
if(price > 1800):
sumAbove1800 = sumAbove1800 + price;
countAbove1800 = countAbove1800 + 1;

现在将它们打印出来,保留 3 位小数:

print("Total Average Price: {:.3f}".format(totalSum / totalPurchases));
print("Total Transactions: {:.3f}".format(totalPurchases));
print("Total Average Price above 1800: {:.3f}".format(sumAbove1800 / countAbove1800 ));
print("Total Transactions above 1800: {:.3f}".format(countAbove1800 ));

关于python - 计算 CSV 中的条目数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50574244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com