2017-11-06 8 views
2

안녕하세요 저는 1992-2016 년 사이에 유지 관리가 완료된 25 개의 다리에 대한 데이터가있는 csv가 있습니다.카운터를 사용하여 csv에서 읽고 플로팅하십시오.

Bridge.csv

첫번째 열에는 서비스 번호에 해당한다. 다음 25 열은 1992 년부터 2016 년까지의 등급에 해당합니다. 조건 등급이 높아지면 교량이 유지 보수를 받았음을 의미합니다. 각 브리지가 유지 보수를 수행하는 시간을 얻는 방법을 알아 냈으므로 사용자가 1992-2016 년을 입력하고 유지 보수 수가 증가한 총 브리지 수를 인쇄 할 수있는 입력을 만들어야합니다. 나는 그 같은 마지막에 별도의 "if"진술 일 것이라고 믿는다.

f = open("BridgeExam1.csv", "r") 
year = int(input("Please give a year between 1992 - 2016: ")) 

for line in f: 
    temp = line.split(",") 
    i = 1 
    maintenance = 0 
    while i < len(temp) - 1: 
     if int(temp[i]) < int(temp[i+1]): 
      maintenance+=1 
     i = i+1 
     temp[0]=temp[0] + 1992 
    print("Bridge "+ temp[0], maintenance)          
f.close() 
+0

당신이해야 [편집] 당신의 질문을받은하고 사람들은 실행 가능한 뭔가를 테스트 솔루션을 사용할 수 있도록 여기에 CSV 파일의 행의 일부를 추가 횟수를 출력합니다 . – martineau

+1

좋은 아이디어. 고마워요 – stevenmiller

답변

1

나는 이것이해야한다고 생각합니다. 다리 번호는 유지 보수를

f = open("BridgeExam1.csv", "r") 
for line in f: 
    temp = line.split(",") 
    i = 1 
    maintenance = 0 
    while i < len(temp) - 1: 
     if int(temp[i]) < int(temp[i+1]): 
      maintenance+=1 
     i = i+1 
    print("Bridge "+ temp[0], maintenance)          
f.close() 
+0

그게 완벽합니다. 나는 계속 카운터를 돌리는 데 계속 빠져 들었지만, while 루프에 빠지면서 야생 데이터를 던졌습니다. 감사 – stevenmiller