计算导入选项卡的总和

2024-09-30 02:21:53 发布

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

这是我的文本文件的内容:

nummer naam vak1 vak2 vak3 vak4 vak5
1234567 Jan 5 7 0 6 4
3526435 Marie 5 5 7 0 0
2230431 Kees 6 10 0 8 6
7685433 André 4 7 8 7 5
0364678 Antoinette 0 2 8 8 8
1424354 Jerôme 7 9 0 5 0
4536576 Kamal 8 0 8 7 8
1256033 Diana 0 0 0 0 0
5504657 Petra 6 6 7 0 6
9676575 Malika 0 6 0 0 8
0253756 Samira 3 8 6 7 10

我已经导入了列表,我可以打开并将结果打印到python中,但仅此而已。下面是我的代码:

results = open("resultaten.txt","r")    
Empty_str = ''                          

line = results.readline()               

while line != Empty_str:               
    print(line.strip('\n'))             
    line = results.readline()           

results.close()

我的程序的目标是计算行和列方向的结果之和。如果结果为0,则课程不会对行或列的总和产生任何影响。你知道吗


Tags: 内容readlinelineresultsjanempty文本文件str
1条回答
网友
1楼 · 发布于 2024-09-30 02:21:53

如果文件中的列用空格分隔,则可以执行以下操作:

import pandas as pd

index_list = []
result_list = []
with open("resultaten.txt") as f:
    for line in f:
        line = line.strip()
        if len(line) > 0:
            num, name, vak1, vak2, vak3, vak4, vak5 = line.split()
            index_list.append(num)
            result_list.append([vak1, vak2, vak3, vak4, vak5])

df = pd.DataFrame(
    data=result_list,
    index=index_list,
    columns=['vak1', 'vak2', 'vak3', 'vak4', 'vak5'])

# the sum of each column
df.sum(axis=0)

# the sum of each row
df.sum(axis=1)

它使用pandas.DataFrame来简化之后的计算。你知道吗

相关问题 更多 >

    热门问题