请对上述例子做散点图比较,请给出matlab代码

为了更直观地展示线性关系和非线性关系的差异,我们可以通过散点图来比较这两种情况。以下是改进后的 MATLAB 代码,包含散点图的绘制:


MATLAB 代码

matlab
复制
% 生成数据
x = -10:0.1:10;  % 自变量 x

% 线性关系
y_linear = 2 * x;

% 非线性关系
y_nonlinear = x.^2;

% 计算皮尔逊相关系数
r_linear = corrcoef(x, y_linear);
r_nonlinear = corrcoef(x, y_nonlinear);

% 显示结果
fprintf('线性关系的皮尔逊相关系数: %.4f\n', r_linear(1, 2));
fprintf('非线性关系的皮尔逊相关系数: %.4f\n', r_nonlinear(1, 2));

% 绘制散点图
figure;

% 线性关系
subplot(1, 2, 1);
scatter(x, y_linear, 50, 'b', 'filled');  % 蓝色散点图
title(sprintf('线性关系 (r = %.4f)', r_linear(1, 2)));
xlabel('x');
ylabel('y = 2x');
grid on;

% 非线性关系
subplot(1, 2, 2);
scatter(x, y_nonlinear, 50, 'r', 'filled');  % 红色散点图
title(sprintf('非线性关系 (r = %.4f)', r_nonlinear(1, 2)));
xlabel('x');
ylabel('y = x^2');
grid on;

代码说明

  1. 生成数据
    • 对于线性关系,

      y=2xy = 2x

    • 对于非线性关系,

      y=x2y = x^2

  2. 计算皮尔逊相关系数
    • 使用 corrcoef 函数计算

      xx

      yy 之间的皮尔逊相关系数。

  3. 绘制散点图
    • 使用 scatter 函数分别绘制线性关系和非线性关系的散点图。
    • 线性关系使用蓝色散点,非线性关系使用红色散点。
    • 在标题中显示皮尔逊相关系数。

运行结果

1. 线性关系

  • 皮尔逊相关系数:

    r=1.0000r = 1.0000

  • 散点图:所有点都落在一条直线上,表明

    xx

    yy 之间存在完美的线性正相关关系。

2. 非线性关系

  • 皮尔逊相关系数:

    r0.0000r \approx 0.0000

  • 散点图:所有点落在一条抛物线上,表明

    xx

    yy 之间存在明显的非线性关系,但皮尔逊相关系数接近 0。


散点图展示

  • 线性关系
    • 散点图呈现一条直线,表明

      xx

      yy 之间存在线性关系。

    • 皮尔逊相关系数为 1,完美反映了这种线性关系。
  • 非线性关系
    • 散点图呈现一条抛物线,表明

      xx

      yy 之间存在非线性关系。

    • 皮尔逊相关系数接近 0,未能反映这种非线性关系。

总结

通过散点图的比较,我们可以更直观地看到:

  • 皮尔逊相关系数能够准确反映线性关系(散点图呈直线)。
  • 皮尔逊相关系数无法反映非线性关系(散点图呈抛物线,但相关系数接近 0)。

因此,在实际数据分析中,除了计算皮尔逊相关系数外,还应结合散点图等可视化工具,全面分析变量之间的关系。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇