RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1607932
Accepted
blessed s1r
blessed s1r
Asked:2025-03-01 18:46:02 +0000 UTC2025-03-01 18:46:02 +0000 UTC 2025-03-01 18:46:02 +0000 UTC

问题:最佳拟合线[关闭]

  • 772
关闭。这个问题与主题无关。目前不接受对此问题的答复。

该问题是由无法再重现的问题或打字错误引起的。尽管类似的问题可能适合在此网站上提出,但该问题的解决方案不太可能对未来的访问者有所帮助。通常,您可以在发布问题之前编写并测试一个最小程序来重现问题,从而避免此类问题。

2 天前关闭。

改进问题

任务:

最佳拟合线是经过一组 n 个点的距离最短的线。在这个练习中,我们将假设集合中的每个点都有 x 和 y 坐标。我们将使用符号和分别计算 x 和 y 轴上的平均值。最佳拟合线用公式 y = mx + b 表示,其中 m 和 b 使用以下公式计算:

公式

编写一个程序,提示用户输入一组点的坐标。在这种情况下,用户必须先输入 x 坐标,然后输入 y 坐标。坐标输入可持续进行,直到用户将 x 坐标输入留空。通过使用前面的公式计算出的值替换变量 m 和 b,显示表征最佳拟合线的公式,形式为 y = mx + b。例如,如果用户输入三个点 (1, 1)、(2, 2.1) 和 (3, 2.9),则得到的公式应为 y = 0.95x + 0.1。

输出时,我的代码给出了不正确的值。我不知道为什么。

def line_of_best_fit(list_x, list_y):
    #Находим Exy - сумму произведений  точек x и y
    Exy = 0
    for x in range(len(list_x)):
        Exy += list_x[x] * list_y[x]

    #находим Ex и Ey - сумма значений x и y
    Ex = sum(list_x)
    Ey = sum(list_y)

    #находим n
    n = len(list_x)

    #находим среднее значение точек x и y
    middle_y = Ey / n
    middle_x = Ex / n

    #Находим Ex_squared - сумма квадратов каждого элемента и sum_Ex_squared - сумма всех элементов возведенная в квадрат
    Ex_squared = 0
    for x in range(len(list_x)):
        Ex_squared += list_x[x]**2

    sum_Ex_squared = Ex**2
    sum_Ey_squred = Ey**2
    #находим m и b
    m = (Exy - ((Ex * Ey) / n)) / (Ex_squared - (sum_Ex_squared  / n))
    b = middle_y - (m * middle_x)

    
    
    return print(f'y = {round(m,2)}x + {round(b,2)}')

def main():
    list_x = []
    list_y = []
    part_x = int(input('Введите значение X: '))
    while part_x != '':
        list_x.append(float(part_x))
        part_y = input('Введите значение Y: ')
        list_y.append(float(part_y))
        part_x = input('Введите значение X: (для выхода введите пустую строку) ')

    line_of_best_fit(list_x,list_y)

if __name__ == '__main__':
    main()
python
  • 1 1 个回答
  • 48 Views

1 个回答

  • Voted
  1. Best Answer
    MBo
    2025-03-01T18:58:54Z2025-03-01T18:58:54Z

    他们在这里把它平方了

    sum_Ex_squared = sum(list_x)**2
    

    再次

                                                             vvvv
    m = (Exy - (Ex * Ey / n)) / (Ex_squared**2 - (sum_Ex_squared**2 / )) 
                                         ^^^^^
                               А это зачем?
    
    • 2

相关问题

  • 是否可以以某种方式自定义 QTabWidget?

  • telebot.anihelper.ApiException 错误

  • Python。检查一个数字是否是 3 的幂。输出 无

  • 解析多个响应

  • 交换两个数组的元素,以便它们的新内容也反转

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5