You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在pandas中索引线性模型摘要输出的特定元素(如R-squared值)

提取OLS回归结果中的R-squared值

方法一:从statsmodels回归结果对象直接提取(推荐)

如果你是用statsmodels库完成的回归,回归结果对象本身内置了获取统计量的属性,无需解析文本输出:

# 假设你的回归结果对象名为 resultmodeldistancevariation2sleep
r_squared = resultmodeldistancevariation2sleep.rsquared
print(r_squared)  # 输出:0.028

方法二:从文本输出中提取(仅当只有文本时使用)

如果只有你提供的这段文本内容,可以用正则表达式匹配提取目标值:

import re

# 你的回归结果文本
summary_text = """OLS Regression Results
Dep. Variable:  distance    R-squared:  0.028
Model:  OLS Adj. R-squared: 0.016
Method: Least Squares   F-statistic:    2.338
Date:   Fri, 18 Nov 2022    Prob (F-statistic): 0.00773
Time:   10:06:14    Log-Likelihood: -1274.1
No. Observations:   907 AIC:    2572.
Df Residuals:   895 BIC:    2630.
Df Model:   11      
Covariance Type:    nonrobust"""

# 匹配R-squared对应的数值
match = re.search(r'R-squared:\s+(\d+\.\d+)', summary_text)
if match:
    r_squared_value = match.group(1)
    print(r_squared_value)  # 输出:0.028

补充:方法一的可靠性更高,因为statsmodels结果对象直接存储统计量,不会受文本格式变动影响;方法二仅作为无对象可用时的备选。

内容的提问来源于stack exchange,提问作者Caledonian26

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 02:05:58