3.2,2.5,10.1,3.2,4,6.3,7,8,9.6,10,100.3344,11.744444,12,14.6 有类似以上数列,python编程把偏离大的数值剔除,去除重复数字,按照逆序保存在文件中,每行一个数字并保留两位小数,并在文件头写入整体数列
时间: 2024-10-17 22:09:44 浏览: 4
要在Python中完成这个任务,你可以使用列表推导式、set数据结构来去重,以及`pandas`库来进行处理和排序。以下是一个示例代码:
```python
import pandas as pd
# 给定的数字序列
numbers = [3.2, 2.5, 10.1, 3.2, 4, 6.3, 7, 8, 9.6, 10, 100.3344, 11.744444, 12, 14.6]
# 去重并剔除偏离较大的数值(这里假设大于100视为偏离较大)
filtered_numbers = [num for num in set(numbers) if abs(num) <= 100]
# 按照逆序排列
sorted_numbers = sorted(filtered_numbers, reverse=True)
# 保存到文件中,每行一个数字,保留两位小数
df = pd.DataFrame(sorted_numbers, columns=['Number'])
df['Number'] = df['Number'].apply(lambda x: round(x, 2))
with open('output.txt', 'w') as f:
df.to_string(f, header=False, index=False, float_format='%.2f')
相关问题
P=[3.2 3.2 3 3.2 3.2 3.4 3.2 3 3.2 3.2 3.2 3.9 3.1 3.2; 9.6 10.3 9 10.3 10.1 10 9.6 9 9.6 9.2 9.5 9 9.5 9.7; 3.45 3.75 3.5 3.65 3.5 3.4 3.55 3.5 3.55 3.5 3.4 3.1 3.6 3.45; 2.15 2.2 2.2 2.2 2 2.15 2.14 2.1 2.1 2.1 2.15 2 2.1 2.15; 140 120 140 150 80 130 130 100 130 140 115 80 90 130; 2.8 3.4 3.5 2.8 1.5 3.2 3.5 1.8 3.5 2.5 2.8 2.2 2.7 4.6; 11 10.9 11.4 10.8 11.3 11.5 11.8 11.3 11.8 11 11.9 13 11.1 10.85; 50 70 50 80 50 60 65 40 65 50 50 50 70 70]; T=[2.24 2.33 2.24 2.32 2.2 2.27 2.2 2.26 2.2 2.24 2.24 2.2 2.2 2.35]; [p1,minp,maxp,t1,mint,maxt]=premnmx(P,T); %创建网络 net=newff(minmax(P),[8,6,1],{'tansig','tansig','purelin'},'trainlm'); %设置训练次数 net.trainParam.epochs = 5000; %设置收敛误差 net.trainParam.goal=0.0000001; %训练网络 [net,tr]=train(net,p1,t1); TRAINLM, Epoch 0/5000, MSE 0.533351/1e-007, Gradient 18.9079/1e-010 TRAINLM, Epoch 24/5000, MSE 8.81926e-008/1e-007, Gradient 0.0022922/1e-010 TRAINLM, Performance goal met. %输入数据 a=[3.0;9.3;3.3;2.05;100;2.8;11.2;50]; %将输入数据归一化 a=premnmx(a); %放入到网络输出数据 b=sim(net,a); %将得到的数据反归一化得到预测数据 c=postmnmx(b,mint,maxt);
这是一个关于神经网络的代码,包含了数据的预处理、网络的构建、训练和预测等步骤。其中,输入数据P是一个14行8列的矩阵,代表14个样本的8个特征值;输出数据T是一个14行1列的矩阵,代表14个样本的目标值。代码中使用了premnmx函数将输入和输出数据归一化,以便使其符合神经网络训练的要求;然后用newff函数构建了一个三层神经网络,其中输入层有8个神经元,隐藏层有6个神经元,输出层有1个神经元,激活函数分别为tansig和purelin;接着使用train函数对神经网络进行训练,训练次数为5000次,收敛误差为0.0000001;最后对新的数据进行归一化,并使用sim函数进行预测,最后使用postmnmx函数将预测结果反归一化得到最终的预测值。
阅读全文