import numpy as np with open('成绩单数字.csv', 'r', encoding='utf-8') as file: s = file.read().replace('\n', ',').split(',') scoreAll = np.array(list(s)).reshape(6, 8) # 字符串s转成列表,转为6行8列的数组 #print(scoreAll) # 输出数组scoreAll scoreNum = scoreAll[1:, 2:].astype(int) #数组scoreAll中非数值型字符串去掉,转为整型,生成数组 #print(scoreNum) # 输出数组scoreNum name = input() course = input() indexName = np.argwhere(scoreAll==name ) print(indexName) print('{}同学的平均成绩为{:.2f}'.format(scoreAll[indexName[0,0],0],np.average(scoreNum[indexName[0,0]-1, 0:]))) indexCourse = np.argwhere(scoreAll==course ) print(indexCourse) print('{}课程平均成绩为{:.2f}'.format(scoreAll[0,indexCourse[0,1]],np.average(scoreNum[0:,indexCourse[0,1]-2]))) print('该课程中位数为{:.2f}'.format(np.median(scoreNum[0:,indexCourse[0,1]-2]))) print('该课程标准差为{:.2f}'.format(np.std(scoreNum[0:,indexCourse[0,1]-2])))
时间: 2024-03-04 21:52:46 浏览: 61
这段代码是一个Python程序,读取了一个成绩单的CSV文件,将读取的数据转为NumPy数组,并进行了一些数据处理和统计分析。其中,输入了两个变量name和course,分别代表学生姓名和课程名称。代码使用np.argwhere()函数查找数组中对应元素的索引,然后使用np.average()函数计算平均值,np.median()函数计算中位数,np.std()函数计算标准差,最终输出了对应的结果。
相关问题
import numpy as np import pandas as pd import matplotlib.pyplot as plt xxx = pd.read_csv('D:\DSSJHGL\baogao\6K高达.csv',encoding='utf-8') xxx.head()
这似乎不是一个问题,而是一段Python代码,它的作用是导入NumPy、Pandas和Matplotlib.pyplot库,然后使用Pandas读取名为'6K高达.csv'的文件,并将其存储在名为'xxx'的变量中,最后使用head()方法显示前5行数据。如果你有任何关于这段代码的问题,可以继续问我。
import pandas as pd import numpy as np trainData = pd.read_csv(r'data\train.csv’)
这段代码可能会报错,出现错误提示"SyntaxError: invalid character in identifier"。
这个错误通常是由于在输入代码时,复制了特殊字符(如空格、制表符、换行符)或中文字符等非法字符,导致代码中出现了非法的标识符。解决方法是检查代码中的标识符是否正确,并去掉非法的字符。
另外,您提供的代码中,路径前的 r 应该去掉,否则也会报错。正确的写法应该是:
```
import pandas as pd
import numpy as np
trainData = pd.read_csv('data/train.csv')
```