Matlab结合ChatGPT—如何计算置信区间?

​前面分享了带置信区间的折线图和带置信区间的折线散点图的绘图教程:

很多人表示,昆哥,图是很好看啦,但咱不会求置信区间啊,咋办嘞?

说实话,这种事情属于数据处理,一般都是在画图前解决的,所以我在教程中是不会体现的。

另一方面,数据处理工作涉及面太广,很多我自己用不到,也就不会深入研究,更谈不上出干货教程(但不影响画图)。

不过,最近这不学会ChatGPT了嘛,搞不定找他呗。

Matlab&ChatGPT计算置信区间

首先,为了防止他随便编个代码骗我,我从《Nature》论文中找到一幅带置信区间的折线散点图

利用之前分享的图片数据提取工具,提取其中的离散点,作为原始数据,而图片本身作为验证信息,检验ChatGPT给出的结果是否正确

然后,向ChatGPT中提问:

这是他给出的代码:

复制代码
% 数据准备data = [0.046053 0.096491 0.14912 0.19518 0.24342 0.30044 0.3443 0.39474 0.44737 0.5 0.54825 0.59649 0.70175 0.74781 0.80044 0.64912 0.85088 1.0044 0.95175 0.90132;         -1.7629 -1.6466 -1.7949 -1.8486 -1.7438 -1.754 -1.7412 -1.662 -1.731 -1.7195 -1.7412 -1.699 -1.6837 -1.7195 -1.7272 -1.4575 -1.4166 -1.3553 -1.4639 -1.4895];x = data(1, :);y = data(2, :);​% 线性拟合[p, S] = polyfit(x, y, 1);​% 计算拟合直线的y值y_fit = polyval(p, x);​% 计算标准误差n = length(y); % 样本数量y_residual = y - y_fit; % 残差SSE = sum(y_residual.^2); % 残差平方和sy = sqrt(SSE / (n - 2)); % 残差标准差​% 计算置信区间alpha = 0.05; % 置信水平 95%t_value = tinv(1 - alpha/2, n - 2); % 学生 t 分布临界值x_mean = mean(x); % x 的均值Sxx = sum((x - x_mean).^2); % x 的方差和delta = t_value * sy * sqrt(1/n + (x - x_mean).^2 / Sxx); % 置信区间​% 可视化figure;plot(x, y, 'bo'); % 原始数据点hold on;plot(x, y_fit, 'r-', 'LineWidth', 2); % 拟合直线plot(x, y_fit + delta, 'r--', 'LineWidth', 1.5); % 上置信区间plot(x, y_fit - delta, 'r--', 'LineWidth', 1.5); % 下置信区间legend('原始数据', '拟合直线', '置信区间', 'Location', 'Best');xlabel('x');ylabel('y');title('带噪声离散点的线性拟合及其置信区间');hold off;

将代码复制粘贴到Matlab,得到结果:

可以看到,除了图片比例之类的细节问题,结果图的整体趋势同验证图没啥区别,说明ChatGPT给的代码没问题。

简单调一下绘图细节:

保险起见,我又问了一下置信区间的计算原理,这是他给出的答案:

找了一下网上相关内容,基本也是大差不差,说明他还是很靠谱的。

以上。

相关推荐
代码搬运媛3 分钟前
AI 大模型 + RAG + 智能体 + 工程落地面试题
人工智能
Mr_Xuhhh8 分钟前
深入理解Java抽象类与接口:从概念到实战
java·开发语言
摸鱼仙人~13 分钟前
Agent & RAG 底层核心难点
人工智能
小手指动起来23 分钟前
保姆级提示词工程学习总结(含实操示例+工具推荐)
人工智能·学习·自然语言处理
龙文浩_23 分钟前
AI人工神经网络核心原理与深度学习机制解析
人工智能·深度学习·神经网络
萝卜白菜。29 分钟前
TongWeb7.0相同的类指明加载顺序
开发语言·python·pycharm
wb0430720129 分钟前
使用 Java 开发 MCP 服务并发布到 Maven 中央仓库完整指南
java·开发语言·spring boot·ai·maven
Rsun0455131 分钟前
设计模式应该怎么学
java·开发语言·设计模式
AI医影跨模态组学33 分钟前
J Immunother. Cancer(IF=10.6)南方医科大学南方医院等团队:基于病理组学的集成模型在胃癌免疫治疗反应预测中的开发与解读
人工智能·深度学习·机器学习·论文·医学·医学影像
良木生香1 小时前
【C++初阶】:C++类和对象(下):构造函数promax & 类型转换 & static & 友元 & 内部类 & 匿名对象 & 超级优化
c语言·开发语言·c++