如何循环并比较2个CSV文件

时间:2018-09-26 03:32:58

标签: python-3.x

好的,所以以前可能有人看过这段代码,但是我解释得很糟。

这是我正在使用的cvs文件:

文件1:

 Needie Seagoon 57      83  55  78      91  73  65  56          
    Eccles      98  91  80      66              77  78  48  77
    Bluebottle  61      88  80  60      45  52  91  85          
    Henry Crun  92      58  50  57      67  45  77  72          
    Minnie Bannister    51      97  52  53      68  58  70  69          
    Hercules Grytpype-Thynne        78  62  75      67              48  56  89  67
    Count Jim Moriarty  51      68  51  66      55  72  50  74          
    Major Dennis Bloodnok       54  47   59     48              66  58  53  83

文件2:

CITS1001    95
CITS1401    100
CITS1402    97
CITS2002    99
CITS2211    94
CITS2401    95
CITS3001    93
CITS3002    93
CITS3003    91
CITS3200    87
CITS3401    98
CITS3402    93
CITS3403    88

我试图用分数进行归一化。所以我想遍历file1 index [1]列。所以

57
(empty)
61
92
51
(empty)
51

,然后将每个分数除以CITS1001中的最高分数95。还有如何遍历一个空字符串或值,给我的错误是int()不是以10为底:''

这是迄今为止我能做的最好的事情

def normalise(students_file, units_list):
    file1 = open(students_file, 'r')
    data1 = file1.readlines()

    for line in data1:
        cell = line.split(",")
        if cell == "":
            line.next()
        else:
            stu_first = int(cell[1])
            answer = stu_first / 95
            print(answer)

所以还没有添加units_list,因为我似乎无法首先循环通过students_file。我刚刚添加了95,以查看列表中的答案。

注意:我不是在练习atm的模块,请不要说使用csv模块或panda,谢谢。

建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

我认为python熊猫值得研究。这是大熊猫的完美用例。

Compare two csv files with python pandas