Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有助于医疗保健,python代码可以根据质量计算AR中有多少日托机构具有什么容量_Python - Fatal编程技术网

有助于医疗保健,python代码可以根据质量计算AR中有多少日托机构具有什么容量

有助于医疗保健,python代码可以根据质量计算AR中有多少日托机构具有什么容量,python,Python,我是python的新手,我正在帮助别人计算一个.csv文件,其中两列用逗号分隔。 左边是关于设施质量的数字0,1,2,3。在右边,它具有所述位置的容量。大约有1.5公里的设施。 我需要找到每个1、2或3个优质设施容量的总和,忽略0。 谢谢你的帮助。这是我的坏代码,我放弃了一段时间后 import numpy as np c0=0 c1=0 c2=0 c3=0 zeros = () count = 0 fp = open ("D:/ASU SCHOOL STUFFS/IFT333/Labs/Lab

我是python的新手,我正在帮助别人计算一个.csv文件,其中两列用逗号分隔。 左边是关于设施质量的数字0,1,2,3。在右边,它具有所述位置的容量。大约有1.5公里的设施。 我需要找到每个1、2或3个优质设施容量的总和,忽略0。 谢谢你的帮助。这是我的坏代码,我放弃了一段时间后

import numpy as np
c0=0
c1=0
c2=0
c3=0
zeros = ()
count = 0
fp = open ("D:/ASU SCHOOL STUFFS/IFT333/Labs/Lab1/V2ez.csv", "r")
for line in fp:
    count += line.rstrip().split(",").count("0")
    print (count)
    zeros = (line.split(","))

for line in fp:
    items = line.rstrip().split(",")
    if items[0] == "0":
        c0 += items[1]
    elif items[0] == "1":
        c1 += items[1]
    elif items[0] == "2":
        c2 += items[0]
    elif items[0] == "3":
        c3 += items[0]

print(c0)
print(c1)
print(c2)
print(c3)

fp.close()

阅读
csv
你真的不需要
numpy
。只需使用内置的
csv
模块即可

你的问题的一个简单例子

import csv

with open("D:/ASU SCHOOL STUFFS/IFT333/Labs/Lab1/V2ez.csv") as csvfile:
    data = csv.reader(csvfile)

    capacities = dict()
    for row in data:
        rating = int(row[0])        
        capacity = int(row[1])

        # Ignore all ratings of zero.
        if rating==0:
            continue

        # Increment the value for this rating. If no entry exists for this rating, then 
        # add one.
        try:
            capacities[rating]+= capacity
        except KeyError:
            capacities[rating] = capacity

    for k,v in capacities.items():
        print(f"Facility rating {k} has a capacity of {v}")

其概念是使用字典,其中键对应于评级,值是该评级的容量。对于每一行,我们在字典中找到额定值,并按所需数量增加容量

这假设容量都是整数。如果不是这样的话,我相信你可以想出一个小小的改变


您还可以使用
defaultdict
更优雅地完成此操作,但希望此示例相对简单且易于理解。希望这有帮助。

阅读
csv
你真的不需要
numpy
。只需使用内置的
csv
模块即可

你的问题的一个简单例子

import csv

with open("D:/ASU SCHOOL STUFFS/IFT333/Labs/Lab1/V2ez.csv") as csvfile:
    data = csv.reader(csvfile)

    capacities = dict()
    for row in data:
        rating = int(row[0])        
        capacity = int(row[1])

        # Ignore all ratings of zero.
        if rating==0:
            continue

        # Increment the value for this rating. If no entry exists for this rating, then 
        # add one.
        try:
            capacities[rating]+= capacity
        except KeyError:
            capacities[rating] = capacity

    for k,v in capacities.items():
        print(f"Facility rating {k} has a capacity of {v}")

其概念是使用字典,其中键对应于评级,值是该评级的容量。对于每一行,我们在字典中找到额定值,并按所需数量增加容量

这假设容量都是整数。如果不是这样的话,我相信你可以想出一个小小的改变


您还可以使用
defaultdict
更优雅地完成此操作,但希望此示例相对简单且易于理解。希望这有帮助。

这是一个很大的帮助。看到一种不同的做事方式真是太好了。我发现在编程时有一百万种方法可以解决同样的问题。很高兴它很有用。祝你的项目好运这是一个很大的帮助。看到一种不同的做事方式真是太好了。我发现在编程时有一百万种方法可以解决同样的问题。很高兴它很有用。祝你的项目好运