我正在处理一个数据集,其中一列中的几个值是字符串。因此,我在对数据集执行操作时遇到错误。
样本数据集:-
1.99 LOHARU 0.3 2 0 2 0.3 5 2 0 2 2
1.99 31 0.76 2 0 2 0.76 5 2 7.48 4 2
1.99 4 0.96 2 0 2 0.96 5 2 9.45 4 2
1.99 14 1.26 4 0 2 1.26 5 2 0 2 2
1.99 NUH 0.55 2 0 2 0.55 5 2 0.67 2 2
1.99 99999 0.29 2 0 2 0.29 5 2 0.06 2 2
完整的数据集可以在这里找到:- https://www.kaggle.com/sid321axn/audit-data?select=trial.csv
我需要在数据集中找到缺失值和异常值。下面是我用来查找缺失值的代码:-
#Replacing zeros and 99999 with `np.NaN`
dataset[[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]]=dataset[[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]].replace(99999,np.NaN)
#if 12,14 and 17 can have zeroes then
dataset[[0,1,2,3,4,5,6,7,8,9,10,11,13,15,16]]=dataset[[0,1,2,3,4,5,6,7,8,9,10,11,13,15,16]].replace(0,np.NaN)
print(Dataset.isnull().sum())
但这不会用 NaN 替换 99999
并找出异常值:-
我正在计算 zscore
import scipy.stats as stats
array = Dataset.values
Z=stats.zscore(array)
但它给了我以下错误:
- TypeError: unsupported operand type(s) for /: 'str' and 'int'