幅度分布-分类器(无线信道模型)
遇到问题:
1,瑞丽信道和莱斯信道重合度较高
2,对数正态信道的波形失真严重
一,平坦分布(经检验正确)
方法一:理论合成
mean = np.random.uniform(0.5, 2, 1)
data = np.random.normal(mean, 0.001, sampleNo)
二,瑞利分布(三种方法任选其一即可)
# 方法一:理论合成
delta = 2
data0 = np.random.normal(0, delta, 20000)
data1 = np.random.normal(0, delta, 20000)
data = (data0**2+data1**2)**0.5
方法二:反函数构建
data0 = np.random.random(20000)
data = 2 * np.sqrt(-2 * np.log(data0))
方法三:numpy自带库
scale = np.random.normal(loc=0.0, scale=20)
d0 = np.random.rayleigh(abs(scale), 40000)
三,莱斯分布
方法一:理论合成(经确认,这个理论是正确的)
data0 = np.random.normal(loc=0.0, scale=1, size=length)
data1 = np.random.normal(loc=0.0, scale=1, size=length)
data = np.sqrt((data0 + a) ** 2 + data1 ** 2)
方法二:反函数(这个方法问题很大)(经检验这个是属于对数正态分布的推导)
data0 = np.random.normal(loc=0.0, scale=abs(delta), size=length)
data = np.exp(u + delta * data0)
四,对数正态分布
方法一:理论合成(与瑞利信道的反函数雷同!!!)(经检验完全正确)
data1 = np.random.normal(0, 1, sampleNo )
data = np.exp(u+delta*data1)
方法二:公式法(和理想差距较大,原因:数据量没有达到一定程度。舍弃)
for i in range(len(x)):
if Y[i] <= lognormal(x[i],u,delta):
data.append(x[i])
方法三:numpy自带库(numpy自带库和理论合成效果相同)
d0 = np.random.lognormal(mean, sigma, 40000)
五,Suzuki分布(确认正确)
方法一:理论合成
data0 = np.random.normal(0, 1, sampleNo)
data1 = np.random.normal(0, 1, sampleNo)
data3 = np.random.normal(0, 1, sampleNo)
u = np.sqrt(data0**2+data1**2)
v = np.exp(m+s*data3)
data = u*v
六,引入数据预处理
均值:一阶中心矩
方差:二阶中心矩
中位数:数值从大到小(或者反序)最中间的数值
众数:出现频次最高的数值(这两个数据需要额外处理)
偏度:统计数据分布非对称程度的数字特征
峰度:表征概率密度分布曲线在平均值处峰值高低的特征数
平均绝对误差:所有单个观测值与算术平均值的偏差的绝对值的平均
与此同时遇到了一个新的问题:
这些数据处理方法使用原始数据还是统计数据!
个人更倾向于统计数据,因为原始数据太过庞大并且数据格式不固定得出来的样值不具有代表性(打脸,统计数据无法使用)