Python 3.x 向浮点数据集添加高斯噪声并保存(python)
我正在研究分类问题,我需要在数据集中添加不同级别的高斯噪声,并进行分类实验,直到我的ML算法无法对数据集进行分类。Python 3.x 向浮点数据集添加高斯噪声并保存(python),python-3.x,machine-learning,classification,noise,Python 3.x,Machine Learning,Classification,Noise,我正在研究分类问题,我需要在数据集中添加不同级别的高斯噪声,并进行分类实验,直到我的ML算法无法对数据集进行分类。 不幸的是,我不知道怎么做。有关于如何添加高斯噪声的建议或编码提示吗 您可以按照以下步骤操作: 将数据加载到熊猫数据框clean\u signal=pd.read\u csv(“数据文件名”) 使用numpy生成与数据集维数相同的高斯噪声 使用signal=clean\u signal+noise 下面是一个可复制的示例: import pandas as pd # create
不幸的是,我不知道怎么做。有关于如何添加高斯噪声的建议或编码提示吗 您可以按照以下步骤操作:
clean\u signal=pd.read\u csv(“数据文件名”)
signal=clean\u signal+noise
下面是一个可复制的示例:
import pandas as pd
# create a sample dataset with dimension (2,2)
# in your case you need to replace this with
# clean_signal = pd.read_csv("your_data.csv")
clean_signal = pd.DataFrame([[1,2],[3,4]], columns=list('AB'), dtype=float)
print(clean_signal)
"""
print output:
A B
0 1.0 2.0
1 3.0 4.0
"""
import numpy as np
mu, sigma = 0, 0.1
# creating a noise with the same dimension as the dataset (2,2)
noise = np.random.normal(mu, sigma, [2,2])
print(noise)
"""
print output:
array([[-0.11114313, 0.25927152],
[ 0.06701506, -0.09364186]])
"""
signal = clean_signal + noise
print(signal)
"""
print output:
A B
0 0.888857 2.259272
1 3.067015 3.906358
"""
没有注释和打印语句的总体代码:
import pandas as pd
# clean_signal = pd.read_csv("your_data.csv")
clean_signal = pd.DataFrame([[1,2],[3,4]], columns=list('AB'), dtype=float)
import numpy as np
mu, sigma = 0, 0.1
noise = np.random.normal(mu, sigma, [2,2])
signal = clean_signal + noise
将文件保存回csv
signal.to_csv("output_filename.csv", index=False)
非常感谢你。我还有一个问题。现在,如果我想增加噪声,我会增加方差?如果没有,怎么做?
mu
是平均值,sigma
是标准偏差,因此使用这些参数来改变噪声