题解 | 计算协方差矩阵

计算协方差矩阵

https://www.nowcoder.com/practice/063d5b379be447a5aa12f2aa2d05717e

import numpy as np


def calculate_covariance_matrix(vectors):
    # 补全代码
    n_features = len(vectors)
    n_observations = len(vectors[0])
    covariance_matrix = np.zeros([n_features, n_features])

    means = [sum(feature) / n_observations for feature in vectors]

    for i in range(n_features):
        for j in range(i, n_features):
            covariance = sum(
                (vectors[i][k] - means[i]) * (vectors[j][k] - means[j])
                for k in range(n_observations)
            ) / (n_observations - 1)
            covariance_matrix[i][j] = covariance_matrix[j][i] = covariance

    return covariance_matrix.tolist()


# 主程序
if __name__ == "__main__":
    # 输入
    ndarrayA = input()

    # 处理输入
    import ast

    A = ast.literal_eval(ndarrayA)

    # 调用函数计算
    output = calculate_covariance_matrix(A)

    # 输出结果
    print(output)

全部评论

相关推荐

感觉今年拿到大厂实习offer的人很多,光是身边同学室友都是好几个offer。由此可见,秋招得有多卷
小浪_Coding:必须卷的起飞, 应该比25更卷一点, 25已经是哀声一片了, 26会更难一点, 现在还有`很多25未找到的
点赞 评论 收藏
分享
深夜书店vv:腾讯是这样的,去年很多走廊都加桌子当工区
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务