利用python3如何給數(shù)據(jù)添加高斯噪聲
Background
高斯噪聲,顧名思義是指服從高斯分布(正態(tài)分布)的一類噪聲。有的時(shí)候我們需要向標(biāo)準(zhǔn)數(shù)據(jù)中加入合適的高斯噪聲讓數(shù)據(jù)更加符合實(shí)際。
python中的random庫(kù)中集成了高斯正態(tài)分布,可以直接使用。
我們可以通過(guò)調(diào)整高斯噪聲均值和方差,獲取不同效果的處理數(shù)據(jù)。
原始數(shù)據(jù)

高斯噪聲sigma = 0.05

高斯噪聲sigma = 0.1

高斯噪聲sigma = 0.15

源碼
import random
import numpy as np
from matplotlib import pyplot as plt
def gauss_noisy(x, y):
"""
對(duì)輸入數(shù)據(jù)加入高斯噪聲
:param x: x軸數(shù)據(jù)
:param y: y軸數(shù)據(jù)
:return:
"""
mu = 0
sigma = 0.05
for i in range(len(x)):
x[i] += random.gauss(mu, sigma)
y[i] += random.gauss(mu, sigma)
if __name__ == '__main__':
# 在0-5的區(qū)間上生成50個(gè)點(diǎn)作為測(cè)試數(shù)據(jù)
xl = np.linspace(0, 5, 50, endpoint=True)
yl = np.sin(xl)
# 加入高斯噪聲
gauss_noisy(xl, yl)
# 畫(huà)出這些點(diǎn)
plt.plot(xl, yl, linestyle='', marker='.')
plt.show()總結(jié)
到此這篇關(guān)于利用python3如何給數(shù)據(jù)添加高斯噪聲的文章就介紹到這了,更多相關(guān)python3添加高斯噪聲內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python必備技巧之Pandas數(shù)據(jù)合并函數(shù)
Pandas中一共有五個(gè)數(shù)據(jù)合并函數(shù),分別為:concat、append、merge、join、combine,本文詳細(xì)講解這五個(gè)函數(shù)的使用方法,需要的可以參考一下2022-03-03
Python XML RPC服務(wù)器端和客戶端實(shí)例
這篇文章主要介紹了Python XML RPC服務(wù)器端和客戶端實(shí)例,本文給出了實(shí)現(xiàn)代碼以及運(yùn)行效果,需要的朋友可以參考下2014-11-11
Python控制臺(tái)獲取輸入與常見(jiàn)的正則表達(dá)式用法
這篇文章主要給大家介紹了關(guān)于Python控制臺(tái)獲取輸入與常見(jiàn)的正則表達(dá)式用法的相關(guān)資料,在Python編程中,控制臺(tái)輸入和正則表達(dá)式是兩個(gè)重要而實(shí)用的概念,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12
pandas實(shí)現(xiàn)數(shù)據(jù)讀取&清洗&分析的項(xiàng)目實(shí)踐
近期因工作需要,需對(duì)幾十萬(wàn)條商品和訂單數(shù)據(jù)進(jìn)行初步的數(shù)據(jù)分析,本文主要pandas實(shí)現(xiàn)數(shù)據(jù)讀取&清洗&分析的項(xiàng)目實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下2022-05-05

