使用高斯噪声扩充14维数据并导出为Excel表格

本文介绍了如何使用Python代码,通过注入高斯噪声,将3组14维数据扩充为99组,并导出为Excel表格。

代码实现:

import numpy as np
import pandas as pd

# 生成3组14维数据
data = np.random.rand(3, 14)

# 注入高斯噪声
mean = 0
stddev = 0.1
noise = np.random.normal(mean, stddev, size=(3, 14))
noisy_data = data + noise

# 扩充为99组数据
expanded_data = np.zeros((99, 14))
for i in range(99):
    if i < 3:
        expanded_data[i] = noisy_data[i]
    else:
        noise = np.random.normal(mean, stddev, size=14)
        expanded_data[i] = noisy_data[i%3] + noise

# 导出为Excel表格
df = pd.DataFrame(expanded_data)
df.to_excel('expanded_data.xlsx', index=False, header=None)

代码解释:

  1. 生成3组14维数据: 使用np.random.rand(3, 14)生成3组14维随机数据,每个数据值在0到1之间。
  2. 注入高斯噪声: 使用np.random.normal(mean, stddev, size=(3, 14))生成符合高斯分布的随机噪声,其中mean为0,stddev为0.1,size为(3, 14)表示生成3组14维的噪声。然后将噪声加到原始数据上,实现数据扩充。
  3. 扩充为99组数据: 使用一个循环,遍历从0到98的索引值。如果索引值小于3,则使用原始数据,否则生成一个新的随机噪声,并加到对应的原始数据上。注意,这里使用了取余运算(i%3),以便将数据循环使用。
  4. 导出为Excel表格: 使用pd.DataFrame(expanded_data)将扩充后的数据转换为DataFrame格式,然后使用to_excel()方法导出为Excel文件。其中,index=False表示不导出行索引,header=None表示不导出列名。

总结:

本文介绍了如何使用Python代码,通过注入高斯噪声,将3组14维数据扩充为99组,并导出为Excel表格。代码简洁易懂,并详细解释了代码逻辑和关键函数的使用方法。希望本文能帮助您了解数据扩充和Python编程的相关知识。


原文地址: https://www.cveoy.top/t/topic/nTxa 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录