拉丁超立方抽样python代码
时间: 2024-08-01 13:00:58 浏览: 200
拉丁超立方 (2)_拉丁超立方_
5星 · 资源好评率100%
拉丁超立方抽样是一种常用的统计采样技术,尤其适用于高维数据集,它通过将样本空间划分为多个相等大小的小立方体,并从每个小立方体中心随机选择一个点,以获取更均匀的分布。以下是使用Python的`scipy`库实现拉丁超立方抽样的简单示例:
```python
from scipy.stats import qmc
import numpy as np
# 设定总体维度和抽样数量
dim = 10 # 高维数据的维度
n_samples = 50 # 抽取的样本数量
# 创建LatinHypercubeSampler实例
lhc_sampler = qmc.LatinHypercube(d=dim)
# 获取拉丁超立方样本
lhc_samples = lhc_sampler.draw(n_samples)
# 将结果转换为numpy数组
lhc_samples_array = np.array(lhc_samples)
print("拉丁超立方抽样结果:")
print(lhc_samples_array)
```
在这个例子中,我们首先导入了必要的模块,然后创建了一个`LatinHypercube`对象并指定了维度。接着,我们调用`draw`方法生成指定数量的样本,最后将结果存储到NumPy数组中。
阅读全文