<jupyter_start><jupyter_text>缺失值有三种常用的处理方法，分别是删除法、替换法、插补法。2.11 删除法删除法可以通过删除观测样本或者删除变量来实现。删除法适用于变量有较大缺失且对研究目标影响不大的情况。如果删除了之后应该很多不建议用删除法。在kaggle中有人这样处理缺失数据，如果数据的缺失达到15%，且并没有发现该变量有多大作用，就删除该变量。`del data['column_name'] 删除某一列``data['column_name'].dropna()   删除某一行为空值或者NA的元素``data.drop(data.columns[[0,1]],axis=1,inplace=True)  删除第1，2列，inplace=True表示直接就在内存中替换了，不用二次赋值生效。``data.dropna(axis=0)         删除带有空值的行 ``data.dropna(axis=1)        删除带有空值的列 `2.12 替换法如果缺失值所在变量为数值型，一般用均值来替换；如果为非数值型变量，则使用中位数或者是众数来替换。`data['column_name']=data['column_name'].fillna(num) 将该列中的空值或者NA填充为num.其中num是某位数字，这个代码用于用数字进行替换。``data['column_name'][data['column_name'].isnull()]=data['column_name'].dropna().mode().values如果该列是字符串的，就将该列中出现次数最多的字符串赋予空值,mode()函数就是取出现次数最多的元素``data['column_name'].fillna(method='pad') 使用前一个数值替代空值或者NA，就是NA前面最近的非空数值替换``data['column_name'].fillna(method='bfill',limit=1)　使用后一个数值替代空值或者NA，limit=1就是限制如果几个连续的空值，只能最近的一个空值可以被填充。``data['column_name'].fillna(data['column_name'].mean()) 使用平均值进行填充``data= data.fillna(data.mean()) 将缺失值全部用该列的平均值代替，这个时候一般已经提前将字符串特征转换成了数值。`2.13 插补法使用删除法和替换法有时会存在信息浪费的问题且数据结构会发生变动，以致最后得到有偏的统计结果。用插补法可以很轻松地解决此类问题。常用的插补法有回归插补，多重插补、拉格朗日插补法等。这里就不插入代码了，这个要看情况而选择插补。拉格朗日插值法参考：https://blog.csdn.net/sinat_22510827/article/details/80972389<jupyter_code>import matplotlib.pyplot as plt
plt.boxplot(df['good_type'],vert = False)#箱线图
plt.show()
plt.plot(df['good_id'], df['good_type'], 'o', color='black')#散点图
df['good_type'].describe()#描述性统计

def count_box(Q_3,Q_1):#Q_3为75%分位数（第三四分位数），Q_1为25%分位数（第一四分位数）
    IQR=Q_3-Q_1
    down_line=Q_1-1.5*IQR
    up_line=Q_3+1.5*IQR
    print("异常值上限:",up_line," 异常值下限：",down_line)
count_box(18,3)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.16666666666666666, 'fraction_numerical': 0.03297362110311751, 'mean_word_length': 14.172727272727272, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '1', 'dir': 'jupyter-structured-clean-dedup', 'id': '501869', 'license': 'Apache-2.0', 'n_tokens_mistral': 1086, 'n_tokens_neox': 1201, 'n_words': 37, 'path': 'ad_operation_insight.ipynb', 'repo_name': 'wr339988/TencentAlgo19', 'size': '1668'}