APP下载

基于Python语言的教学数据处理平台设计

2023-10-16

中国新技术新产品 2023年17期
关键词:数据处理密钥函数

游 颖 程 俊

(江西经济管理干部学院,江西 南昌 330088)

教育领域涉及学生信息、课程评估、学习成绩等大量的教学数据。随着教学数据的日益增长和复杂化,教育工作者和研究人员需要一个统一的数据存储和访问平台进行教学数据的管理[1]。Python语言作为一种强大的编程语言,在各个领域均有卓越的表现,其简洁易读的语法风格使代码具有高可读性,而丰富的库和框架则提供了广泛的功能支持[2]。Python 的跨平台性使开发人员能够轻松地在不同的操作系统上开发和部署应用程序。此外,Python还拥有庞大的开发者社区,提供了丰富的资源和支持,使开发人员能够更快地上手操作并解决问题[3-4]。综合而言,Python语言因其简洁性、高效性、可扩展性等优势,已成为广大开发者的首选语言,应用于各种领域的软件开发和数据处理任务。该文设计了基于Python语言的教学数据处理平台,旨在应用该平台满足教育领域对高效、灵活和定制化数据处理工具的需求,推动教学质量的提升和教育改革的推进。

1 教学数据处理平台总框架设计

基于Python语言的教学数据处理平台用于处理和分析教学数据,可提供数据驱动的教育决策支持和教学优化,该平台的总框架设计如图1所示。

图1 基于Python语言的教学数据处理平台总框架设计

教学数据处理平台的硬件设计包括服务器或云计算资源,用于存储和处理大量的教育数据,硬件的具体配置和规模取决于平台的使用需求和数据量大小。教学数据处理平台的软件设计包括Python 编程语言及其相关库和框架,如Pandas、NumPy、SciPy、Matplotlib、Scikit-learn 和TensorFlow。用于数据处理、分析、可视化和机器学习等任务,支持平台的核心功能和功能模块的实现[5]。此外,平台还包括数据库管理系统、Web 开发框架和用户界面设计工具,可实现数据存储、功能的交互性和用户友好性。

2 硬件设计

进行基于Python语言的教学数据处理平台的硬件设计时,服务器选择Dell PowerEdge R740,支持英特尔至强处理器,支持多通道DDR4 内存,最高容量为3TB。提供多个PCIe 插槽,用于扩展和增强服务器的功能,例如添加额外的网络适配器、存储控制器等。配备iDRAC 远程管理功能,以实现远程监控、故障排除和管理服务器的能力,兼容多种操作系统,包括Windows Server、Linux 等。该服务器具有强大的计算性能和可靠性,用于承载教学数据处理平台的核心功能和数据存储。在存储设备方面,系统使用Dell EMC Unity 650F,用于提供高容量和高性能的存储解决方案,并存储和管理教学数据,确保数据的可靠性和快速访问。网络设备选择Cisco Catalyst 9000 系列交换机,以便为系统提供高速和可靠的网络连接,确保平台运行的稳定性和数据传输的快速性。

3 软件设计

3.1 数据收集

在基于Python语言的教学数据处理平台中,开展数据收集首先需要确定收集教学数据的来源,其中包括学生学习管理系统、在线学习平台和学校管理系统等。平台的数据收集模块要主动与相关部门或机构建立合作,获得访问相关数据源的权限和API 密钥。API 密钥是用于身份验证和授权访问数据源的唯一标识符,具体的API 密钥获取与使用流程如图2所示。1)注册账户:访问相关部门或机构的开发者门户网站或API 提供商的官方网站,注册一个账户。2)创建应用程序:在开发者门户网站或API 提供商的控制台中创建一个新的应用程序或项目,涉及为应用程序提供名称、描述等信息。3)选择API 服务:从可用的API 服务中选择适合个人需求的服务,其中包括学生学习管理系统的API、在线学习平台的API 等。4)生成API 密钥:在应用程序或项目的设置中生成一个API 密钥,该密钥将作为访问和验证身份的唯一标识符。5)访问权限设置:根据需要设置API 密钥的访问权限和范围,选择特定的API 端点、数据访问权限等。当符合范围时,进行下一步,如果不符合范围,则需要重新选择API 服务。6)遵守规定和限制:了解并遵守相关部门或机构的API 使用规定和限制,其中包括每日请求限制、数据保护措施等。7)使用API 密钥:在数据收集模块或应用程序中使用生成的API 密钥进行身份验证,在API请求中添加特定的参数,以便将API 密钥传递给API 服务提供商。

图2 API 密钥获取使用流程

密钥建立成功后,使用Python 的网络请求库requests与数据源API 进行交互,或者使用Python 的BeautifulSoup网页解析库从网页中提取数据。通过认证或授权方式访问受保护的数据源,系统用OAuth 协议进行身份验证,最后使用API 文档收集和获取数据源提供的数据,完成数据收集。

3.2 数据清洗及统计

数据质量是指数据的准确性、完整性、一致性、唯一性和及时性等方面的特征。在数据分析中,数据质量至关重要,因为分析的结果和决策均依赖于数据的质量。在设计中需要重点关注数据准确性与完整性。数据应能准确地反映所代表的事实,不应该包括任何错误。并验证数据的来源和采集过程,确保数据采集的方法和工具可靠。数据完整性是指数据的完整程度,即数据是否包括所有必要的字段和记录,检查是否有缺失值,以确保数据记录都是完整的,不缺少重要信息。

数据应按照统一的格式存储,方便处理和分析。确保数据类型正确,比如数值字段应该是数值类型,日期字段应该是日期类型等。在进行数据分析前,对数据进行清洗,处理缺失值、异常值和不一致的数据。使用合适的方法填充缺失值或处理异常值,避免对分析结果产生负面影响。

基于Python语言的教学数据处理平台使用Python 的Pandas 库进行数据导入、数据清洗并计算数据的描述统计信息。使用Pandas 库中的函数读取CSV 文件,或使用适合的函数读取其他格式的数据文件。这些函数将数据加载到Pandas 的DataFrame 数据结构中,方便后续的数据处理和分析。完成数据导入后进行数据清洗,并计算描述统计信息,数据清洗及计算的具体过程如图3所示。

图3 数据清洗及统计信息计算

在数据清洗过程中,处理缺失值时使用Pandas 的“dropna()”函数删除包括缺失值的行或列,或使用“fillna()”函数填充缺失值为指定的数值或方法,以此来确保数据的完整性和一致性。处理重复值时使用Pandas 的“drop_duplicates()”函数删除数据中重复的行,以确保数据的唯一性和准确性。处理异常值时需要根据数据的特点和实际需求进行,使用条件语句或其他方法来检测和处理异常值,以确保数据的可靠性和准确性。

描述统计信息计算中包括多项内容:1)使用Pandas的“mean()”函数计算数据的平均值,即各个数据值的总和除以数据个数。2)使用Pandas 的“median()”函数计算数据的中位数,即将数据按照大小排序后,位于中间位置的数值。3)使用Pandas 的“std()”函数计算数据的标准差,即衡量数据分散程度的一种统计指标。4)使用Pandas 的“max()”和“min()”函数分别计算数据的最大值和最小值,用于了解数据的取值范围。5)使用Pandas 的“describe()”函数一次性计算数据的多个描述统计信息,如计数、四分位数等,该函数会向系统返回一个包括统计信息的汇总表。

3.3 数据处理

数据分析和建模是基于Python语言的教学数据处理平台中处理数据的重要环节。该平台使用Python 的SciPy 统计库进行数据分析,对统计得到的教学数据进行假设检验及相关性分析。假设检验中需要对独立样本t进行检验(t-test),以此比较2 组独立样本的均值是否存在显著差异,具体的t值的计算如公式(1)所示。

通过对2 组学生样本的成绩数据进行假设检验,可以判断教学方法或策略是否能够对学生成绩产生显著影响。完成检验后使用皮尔逊相关系数(Pearson correlation coefficient)衡量2 个变量之间的线性相关性,如公式(2)所示。

通过计算学生的学习成绩与其他变量(如学习时间、学习资源使用情况和参与度等)之间的皮尔逊相关系数,可以了解这些因素与学生成绩之间的相关性,帮助分析哪些因素对学生成绩有较强的影响。

根据计算得到的皮尔逊相关系数的值,解释变量之间的相关性强度。如果相关系数接近于1,表示变量之间存在强正相关;如果系数接近于-1,表示变量之间存在强负相关;如果系数接近于0,表示变量之间没有线性相关性。使用Python 的Matplotlib 可视化库对数据进行可视化,绘制直方图、折线图和散点图等,以便更直观地理解数据分布和趋势。

4 测试试验

4.1 试验准备

为测试基于Python语言的教学数据处理平台的性能,试验使用Dell PowerEdge R740 服务器,配置为2 x Intel Xeon Silver 4110 处理器、64GB 内存、2TB 硬盘。选择Cisco ISR 4321 路由器和Cisco Catalyst 2960 交换机搭建局域网环境。客户端设备至少需要2 台笔记本电脑或台式机,用于连接平台进行测试。服务器上安装Ubuntu Server 20.04 LTS。安装Python 3.8 及以上版本,并配置所需的Python 库和依赖项。安装PostgreSQL 为数据库管理系统,用于数据存储和管理。准备一组模拟的教学数据,包括学生信息、课程信息以及成绩记录等,使用随机生成数据的方式来模拟真实的教学数据。

4.2 试验结果

试验选择了5 个不同的运行时间节点(T1~T5),并提供了相应的数据指标。响应速度以毫秒(ms)为单位,表示平台对用户请求的响应时间;处理能力以数据量(条/s)为单位,表示平台的数据处理能力;传输速率以兆比特每秒(Mbit/s)为单位,表示数据传输的速率;清洗能力以百分比(%)为单位,表示平台对数据进行清洗和预处理的质量。基于Python语言的教学数据处理平台在不同运行时间节点下的数据处理结果对比情况见表1。

表1 测试试验结果

分析测试试验结果,可以看出平台在不同运行时间节点下的响应速度相对较快,平均为7ms~8ms,能够快速响应用户的请求,提供高效的服务。平台在各个运行时间节点下的处理能力均相当稳定,平均约为1000 条/s,具备处理大量数据的能力,可以高效地进行数据处理和分析操作。平台在不同运行时间节点下的传输速率较稳定,平均约为296Mbit/s~301Mbit/s,具备快速的数据传输能力,可以高效地传输大量数据。平台清洗能力表现出色,平均为97.9%~99.0%,能够有效地清洗和预处理数据,提供高质量的数据分析和建模基础。

5 结语

综上所述,基于Python语言的教学数据处理平台可以更全面地处理和分析教育领域的数据。该平台通过结合Python语言及机器学习库,可为用户提供更强大的工具及功能,使用户能够更轻松地处理和分析教学数据,从而获得更深入的洞见、更有价值的结论。通过该平台,教育工作者和研究人员能够更好地理解学生的学习趋势和教学效果,并采取相应的措施来提高教学质量。今后应对平台进行进一步的完善和拓展,以满足不断变化的教育数据处理需求,为教育领域的数据分析提供更多的支持和帮助。

猜你喜欢

数据处理密钥函数
探索企业创新密钥
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
二次函数
ILWT-EEMD数据处理的ELM滚动轴承故障诊断
二次函数
密码系统中密钥的状态与保护*
函数备考精讲
一种对称密钥的密钥管理方法及系统
基于ECC的智能家居密钥管理机制的实现
基于希尔伯特- 黄变换的去噪法在外测数据处理中的应用