本文主要讲解:使用python删除数据中含有".0.01"的异常数据
主要思路:
含有".0.01"的异常数据
示例1:
示例2:
给你们提供一部分数据:
-0.0244498
8.00209-0.0450641
0.00740863
0.00428525
-0.00789592
-0.012581
-0.0353816
-0.00446021
-0.0141427
-0.0319459
-0.00414787
-0.0269485
30.0128933
-0.012890.00366057
-0.0281979
-0.0225758
-0.00196151
-0.0369433
0.0080333
-0.037568
-0.0110193
-0.00539722
-0.0207018
-0.0263239
0.0136554
-0.0197648
0.0142801
-0.0378803
-0.0303842
0.0111567
-0.0222635
-0.0256992
-0.0113316
-0.016329
-0.00133683
0.0111567
0.0245872
-0.0100823
-0.00664657
-0.015392
-0.0360063
0.00522226
0.00459759
-0.0188277
-0.0260115
-0.0313213
0.00834564
-0.011644
-0.00539722
-0.0244498
0.0117814
-0.0225758
0.0283353
-0.00539722
-0.0288226
80.0182031
-0.032250.0233379
3.03830.0302093
0.00772096
捕获异常 try…except
编写格式
Exception代码要捕获的异常,as e代表储存异常的基本信息
try: #写一个 try 把可能出错的代码放进去。
代码段
except Exception as e:# 写一个except
获取到异常时的处理 # 书写捕获异常的处理方案
示例:
try:
values = .0.00147421
values = float(values)
except Exception as e:
print(values)
print(e)
主运行程序入口
import pandas as pd
import numpy as np
data = pd.read_csv('3.xlsx', sep='\t', dtype=str, names=['col'], error_bad_lines=False)
for index, one in data.iterrows():
values = one[0]
resoult = {}
for i in values:
resoult[i] = values.count(i)
print(resoult)
values = values.replace('.0.', '0.')
if '.0.' in values:
data.drop(index=index)
if '.' in resoult.keys():
if resoult['.'] > 1:
data.drop(index=index)
if values == '.0.00147421':
data.drop(index=index)
try:
values = float(values)
except:
print(values)
data.drop(index=index)
if data.shape[0] < 10324:
data = np.append(data.values, [0.0] * (10324 - data.shape[0]))
print(len(data))
for i in range(len(data)):
try:
data[i] = float(data[i])
except:
print(data[i])
np.delete(data, [i], axis=0)
data = data.astype(float)