一、生成满足标准状态分布的随机数
import numpy as np
# 生成1000个满足标准正态分布的随机数
random_numbers = np.random.randn(1000)
# 打印前10个随机数以查看
print(random_numbers[:10])
# 如果需要,可以将这些随机数保存到CSV文件中
import pandas as pd
# 将随机数转换为DataFrame
df = pd.DataFrame(random_numbers, columns=['Random_Numbers'])
# 保存DataFrame到CSV文件
csv_file_path = 'normal_distributed_random_numbers.csv'
df.to_csv(csv_file_path, index=False)
print(f"随机数已保存到 {csv_file_path}")
[ 4.23940896e-01 5.74976343e-01 8.34917270e-04 6.62136676e-01
1.69540374e+00 1.25813802e+00 -9.43009884e-01 -9.25107804e-01
-1.89330934e+00 -5.57415578e-01]
二、生成自定义分布条件的随机数
例:生成1-5范围内的整数(1,2,3,4,5)1000个,要求分别按照10%,20%,30%,20%,20%的比例产生。
import numpy as np
import pandas as pd
# 定义每个数字的概率,注意这里不需要加起来为1,numpy会自动处理
probabilities = [0.1, 0.2, 0.3, 0.2, 0.2]
# 生成1000个随机数,使用numpy的random.choice函数,并指定概率
# 注意np.random.choice的p参数是概率数组,不需要手动调整索引
random_integers = np.random.choice(range(1, 6), size=1000, p=probabilities)
# 将随机整数转换为pandas DataFrame
df = pd.DataFrame({'RandomInt': random_integers})
# 保存DataFrame到CSV文件
csv_file_path = 'random_integers.csv' # 确保文件路径和文件名正确
df.to_csv(csv_file_path, index=False)
print(f"随机整数已保存到{csv_file_path}")
随机整数已保存到random_integers.csv