如何从csv读取数据并用python打印细节

2024-10-01 07:16:57 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我有一个csv文件和一堆桥数据。共有25座桥,每座桥的编号在第1列。其余的列都有相应的桥况数据。例如,在第1行中,1是桥号,6是桥号 1992年状况评分,1993年状况评分8分,1994年状况评分8分,1995年状况评分7分,依此类推

到目前为止,我已经编写了一个代码,要求用户输入一个介于1-25之间的桥号,我试图实现的输出是输入的桥号所处的各种条件以及它所处的年份。例如,桥梁1的状况等级为6级时为1年,状况等级为8级时为2年,状况等级为7级时为10年,依此类推。请参见图像链接

NBIBridge Pic

这是我到目前为止的想法,但我对python还很陌生,需要一些(很多)帮助。有人能帮我从csv上打个正确的桥号吗

f = open("NBIBridge.csv", "r")
n = int(input("Please enter a bridge number: "))
while n < 1 or n >25:
    n = int(input("please enter a bridge number >1 and <25: "))

bridge = []
for line in f:
    temp = line.split(",")
    i = int(temp[n])
    j = int(temp[n]) 
    temp = [j,n]
    bridge.append(temp)

Tags: 文件csv数据代码numberinputline评分
1条回答
网友
1楼 · 发布于 2024-10-01 07:16:57

首先,我将转置数据,使桥号在第一行,这些将作为条件评级的标题

接下来,我认为最好使用pandas来表示数据帧中的数据:

import pandas as pd
bridge_data = pd.read_csv('NBIBridge.csv')

然后遍历每一列和每一组,计算条件等级。你可以选择如何显示这个,但我现在就把它放到字典里:

bridge_dict = {}
for col in data:
    bridge_dict[col] = data.groupby(col).size()

相关问题 更多 >