对二维数据滑窗添加噪声Python代码
时间: 2024-09-18 11:10:43 浏览: 50
在Python中,我们可以使用numpy库来进行数值计算,包括对二维数据进行滑动窗口处理以及添加随机噪声。以下是一个简单的例子,展示了如何通过pandas读取二维数据,然后用rolling()函数进行滑动窗口操作,再用random模块添加噪声:
```python
import pandas as pd
import numpy as np
from scipy import stats
# 假设你有一个二维数据数组data
# data = ... # 这里填写你的二维数据,例如data = np.random.rand(100, 10)
# 使用pandas DataFrame
df = pd.DataFrame(data)
# 定义滑动窗口大小和噪声范围
window_size = 5
noise_range = (0, 0.1) # 添加的噪声范围在0到0.1之间
# 创建一个滚动窗口函数
def add_noise(window):
# 对每个窗口内的数据添加均匀分布的噪声
noise = np.random.uniform(noise_range[0], noise_range[1], size=window.shape)
return window + noise
# 对DataFrame进行滑动窗口并添加噪声
noisy_data = df.rolling(window_size).apply(add_noise, raw=True)
# 由于rolling操作会返回一个新的DataFrame,原始数据不会改变
print("Noisy Data:\n", noisy_data.head())
阅读全文