怎么搭建本地网站,黑龙江省网站建设,某某网站建设策划书2000字,水果网站推广最近#xff0c;大数据工程师Kin Lim Lee在Medium上发表了一篇文章#xff0c;介绍了8个用于数据清洗的Python代码。数据清洗#xff0c;是进行数据分析和使用数据训练模型的必经之路#xff0c;也是最耗费数据科学家/程序员精力的地方。这些用于数据清洗的代码有两个优点大数据工程师Kin Lim Lee在Medium上发表了一篇文章介绍了8个用于数据清洗的Python代码。数据清洗是进行数据分析和使用数据训练模型的必经之路也是最耗费数据科学家/程序员精力的地方。这些用于数据清洗的代码有两个优点一是由函数编写而成不用改参数就可以直接使用。二是非常简单加上注释最长的也不过11行。在介绍每一段代码时Lee都给出了用途也在代码中也给出注释。大家可以把这篇文章收藏起来当做工具箱使用。涵盖8大场景的数据清洗代码这些数据清洗代码一共涵盖8个场景分别是删除多列、更改数据类型、将分类变量转换为数字变量、检查缺失数据、删除列中的字符串、删除列中的空格、用字符串连接两列(带条件)、转换时间戳(从字符串到日期时间格式)删除多列在进行数据分析时并非所有的列都有用用df.drop可以方便地删除你指定的列。def drop_multiple_col(col_names_list, df):AIM - Drop multiple columns based on their column namesINPUT - List of column names, dfOUTPUT - updated df with dropped columns------df.drop(col_names_list, axis1, inplaceTrue)return df转换数据类型当数据集变大时需要转换数据类型来节省内存。def change_dtypes(col_int, col_float, df):AIM - Changing dtypes to save memoryINPUT - List of column names (int, float), dfOUTPUT - updated df with smaller memory------df[col_int] df[col_int].astype( int32 )df[col_float] df[col_float].astype( float32 )将分类变量转换为数值变量一些机器学习模型要求变量采用数值格式。这需要先将分类变量转换为数值变量。同时你也可以保留分类变量以便进行数据可视化。def convert_cat2num(df):# Convert categorical variable to numerical variablenum_encode { col_1 : { YES :1, NO :0},col_2 : { WON :1, LOSE :0, DRAW :0}}df.replace(num_encode, inplaceTrue)检查缺失数据如果你要检查每列缺失数据的数量使用下列代码是最快的方法。可以让你更好地了解哪些列缺失的数据更多从而确定怎么进行下一步的数据清洗和分析操作。def check_missing_data(df):# check for any missing data in the df (display in descending order)return df.isnull().sum().sort_values(ascendingFalse)删除列中的字符串有时候会有新的字符或者其他奇怪的符号出现在字符串列中这可以使用df[‘col_1].replace很简单地把它们处理掉。def remove_col_str(df):# remove a portion of string in a dataframe column - col_1df[ col_1 ].replace(, , regexTrue, inplaceTrue)# remove all the characters after (including ) for column - col_1df[ col_1 ].replace( .* , , regexTrue, inplaceTrue)删除列中的空格数据混乱的时候什么情况都有可能发生。字符串开头经常会有一些空格。在删除列中字符串开头的空格时下面的代码非常有用。def remove_col_white_space(df):# remove white space at the beginning of stringdf[col] df[col].str.lstrip()用字符串连接两列(带条件)当你想要有条件地用字符串将两列连接在一起时这段代码很有帮助。比如你可以在第一列结尾处设定某些字母然后用它们与第二列连接在一起。根据需要结尾处的字母也可以在连接完成后删除。def concat_col_str_condition(df):# concat 2 columns with strings if the last 3 letters of the first column are pilmask df[ col_1 ].str.endswith( pil , naFalse)col_new df[mask][ col_1 ] df[mask][ col_2 ]col_new.replace( pil , , regexTrue, inplaceTrue) # replace the pil with emtpy space转换时间戳(从字符串到日期时间格式)在处理时间序列数据时我们很可能会遇到字符串格式的时间戳列。这意味着要将字符串格式转换为日期时间格式(或者其他根据我们的需求指定的格式) 以便对数据进行有意义的分析。def convert_str_datetime(df):AIM - Convert datetime(String) to datetime(format we want)INPUT - dfOUTPUT - updated df with new datetime format------df.insert(loc2, column timestamp , valuepd.to_datetime(df.transdate, format %Y-%m-%d以上就是本文的全部内容希望对大家的学习有所帮助也希望大家多多支持脚本之家。