python生成随机数并存到excel中的一列

import random
import xlwt

b = []

for i in range(1, 1500):
    a = []
    #data = random.uniform(0.5, 4)
    data = random.randint(1, 154)
    data = round(data, 6)
    a.append(data)
    if a not in b:
        b.append(a)
    print (i)
print (b)

workbook = xlwt.Workbook(encoding='utf-8')
data_sheet = workbook.add_sheet("show_data")
index = 0
for i in b:
    for j, item in enumerate(i):
        data_sheet.write(index, j, item)
    index += 1
workbook.save("data.xls")
  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是基于Python的BP神经网络的代码,包括数据划分为训练集和测试集,以及将预测值反归一化输出到Excel表格的功能。 ```python import pandas as pd import numpy as np from sklearn.preprocessing import MinMaxScaler from sklearn.model_selection import train_test_split from keras.models import Sequential from keras.layers import Dense # 读取数据 data = pd.read_excel('data.xlsx') # 将数据集分为特征和目标变量 X = data.iloc[:, :-1].values y = data.iloc[:, -1].values # 将目标变量进行归一化 scaler = MinMaxScaler() y = scaler.fit_transform(y.reshape(-1, 1)) # 将数据集分为训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0) # 构建BP神经网络模型 model = Sequential() model.add(Dense(12, input_dim=8, activation='relu')) model.add(Dense(8, activation='relu')) model.add(Dense(1, activation='sigmoid')) # 编译模型 model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy']) # 训练模型 model.fit(X_train, y_train, epochs=150, batch_size=10) # 评估模型 scores = model.evaluate(X_test, y_test) print("%s: %.2f%%" % (model.metrics_names[1], scores[1]*100)) # 预测测试集结果 y_pred = model.predict(X_test) # 将预测结果反归一化 y_pred = scaler.inverse_transform(y_pred) # 将预测结果输出到Excel表格 df = pd.DataFrame({'Actual': scaler.inverse_transform(y_test.reshape(-1)), 'Predicted': y_pred.reshape(-1)}) df.to_excel('predicted_results.xlsx', index=False) ``` 在这个例子,我们使用了一个包含8个输入、12个隐藏层节点和1个输出的BP神经网络模型。我们将训练集和测试集的比例设置为80:20,并使用Adam优化器和二元交叉熵损失函数来编译模型。在训练模型之后,我们使用模型评估方法来评估模型的准确性,并使用模型预测方法来预测测试集的结果。最后,我们将预测结果反归一化,并将它们输出到一个Excel表格

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值