题解 | 异常值与缺失值

异常值与缺失值

https://www.nowcoder.com/practice/ff45ccddb4d54659bac8fec4e365f582

import numpy as np


def preprocess_data():
    n=(int)(input())
    li=[]
    for i in range(n):
       num=float(input())
       li.append(num)
    data=np.array(li)
    # 将-1替换为NaN以便计算均值
    data = np.where(data == -1, np.nan, data)

    # 计算均值,忽略NaN值
    mean_value = np.nanmean(data)

    # 填补缺失值
    data = np.where(np.isnan(data), mean_value, data)

    # 去除异常值(大于800或小于200的值)
    data = data[(data >= 200) & (data <= 800)]

    return data


def main():
    ans = preprocess_data()
    for i in range(len(ans)):
        print(f"{ans[i]:.4f}")


if __name__ == "__main__":
    main()

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务