manuseamento de excepção de dados de limpeza pandas--

manipulador de exceção

A primeiros dados calculados limites superiores e inferiores, é determinado se os dados estão dentro desta gama, e outras operações pode ser substituído

funções de computação comuns:

Quantil :. Df altura .quantile (0,5) # metade quantil, que é a mediana
mediana :. Df altura .median ()
médias :. Df altura .mean ()
desvio padrão :. Df Altura .std ()
a função que descreve :. .describe altura df ()

Determinar se existe um valor anormal qualquer ()

import pandas as pd
import numpy as np 

df=pd.read_csv('test_innom.csv',encoding='gbk')
print(df.身高)
df_mean=df.身高.mean()
df_std=df.身高.std()
min_da=df_mean-df_std
max_da=df_mean+df_std
print(any((df.身高< min_da )| (df.身高 > max_da) ))
for x in df.身高:
	if (x< min_da )| (x > max_da) :
		print("异常值%d"%x)
print(df_mean)
print(df_std)
print(df.身高.describe())
print(df.身高.median())
print(df.身高.quantile(0.5))

Aqui Insert Picture Descrição

Alternativamente, usando os valores de alcance máximo

Usar funções loc necessário modificar os dados de posição, os dados na substituição atribuído, o seguinte exemplo irá utilizar os dados além do valor máximo não exceda a substituição de dados máxima

import pandas as pd
import numpy as np 

df=pd.read_csv('test_innom.csv',encoding='gbk')
print(df.身高)
df_mean=df.身高.mean()
df_std=df.身高.std()
min_da=df_mean-df_std
max_da=df_mean+df_std
print(any((df.身高< min_da )| (df.身高 > max_da) ))
for x in df.身高:
	if (x< min_da )| (x > max_da) :
		print("异常值%d"%x)
rep_val_max=df.身高[df.身高<max_da].max()
df.loc[df.身高>max_da,'身高']=rep_val_max
print(df.身高)	

Aqui Insert Picture Descrição

Publicado 70 artigos originais · ganhou elogios 1 · vista 2420

Acho que você gosta

Origin blog.csdn.net/weixin_43794311/article/details/104981892
Recomendado
Clasificación