Python编程读取csv文件数据分别计算RMSE、SD、R

使用 Pandas 和 NumPy 库,从 CSV 文件中读取数据,并对列名进行了更新。使用循环计算了三组数据的 RMSE、标准差和相关系数,并将结果打印输出。其中,RMSE(Root Mean Squared Error)是衡量预测值和真实值之间误差的一种方法;SD(Standard Deviation)是预测值和真实值之间误差的标准差;R(Correlation Coefficient)是衡量预测值和真实值之间线性关系的一种方法。通过计算这些指标,可以评估模型的性能和预测精度。

一、获得CSV文件中的列名

python 复制代码
import pandas as pd
import numpy as np

# 读取 csv 文件
data = pd.read_csv('组合处理1.csv')
# 输出列名
print(data.columns)
# 更新列名
c 复制代码
结果:
['true value', 'predicted value', 'Unnamed: 2', 'true value.1',
'predicted value.1', 'Unnamed: 5', 'true value.2', 'predicted value.2']

二、完整代码计算

python 复制代码
import pandas as pd
import numpy as np

# 读取 csv 文件
data = pd.read_csv('组合处理1.csv')
# 输出列名
print(data.columns)
# 更新列名
data.columns = ['true value', 'predicted value', 'Unnamed: 2', 'true value.1',
                'predicted value.1', 'Unnamed: 5', 'true value.2', 'predicted value.2']

# 分别计算三对数据
for i, (true_col, pred_col) in enumerate([('true value', 'predicted value'),
                                          ('true value.1', 'predicted value.1'),
                                          ('true value.2', 'predicted value.2')]):
    # 提取需要计算的列
    true_values = data[true_col]
    predicted_values = data[pred_col]

    # 计算RMSE
    rmse = np.sqrt(((predicted_values - true_values) ** 2).mean())

    # 计算标准差
    sd = np.std(predicted_values - true_values)

    # 计算相关系数
    r = np.corrcoef(true_values, predicted_values)[0, 1]

    print(f"第{i+1}组结果:")
    print(f"RMSE: {rmse:.4f}")
    print(f"SD: {sd:.4f}")
    print(f"R: {r:.4f}")
相关推荐
迅猛龙办公室4 分钟前
python实现简单进度条
java·前端·python
郝学胜_神的一滴7 分钟前
AI 编程智能体 06:用Anaconda搞定Python多环境,彻底告别版本兼容灾难
人工智能·python
清水白石0088 分钟前
Python 对象模型深度解析:从“一切皆对象”到 id、type、isinstance 底层机制与小整数缓存原理
开发语言·python·缓存
for_ever_love__12 分钟前
Python 进阶——迭代器、生成器、装饰器与 asyncio
python·装饰器·生成器·大模型开发
5G微创业16 分钟前
去水印API如何实现技术变现
python·sdk·短视频
for_ever_love__26 分钟前
模块与包——import 机制与 requirements 管理依赖
python·模块·大模型开发·依赖管理
郝学胜-神的一滴26 分钟前
AI 编程智能体 05:拆解智能体分级体系、类型与全行业落地场景
开发语言·人工智能·python·程序人生·pycharm
小小张说故事29 分钟前
Python 装饰器把函数"搞丢"了?5 个必踩的坑与完整避坑对照表
后端·python
for_ever_love__41 分钟前
容器类型全家桶——list、tuple、dict、set 与推导式
python·容器·数据类型·大模型开发
外收内放1 小时前
Python基础语法练习题(43-44)
开发语言·python