データクレンジング、およびデータ解析は、トレーニングデータモデルを使用する唯一の方法ですが、また、最もコストのローカルデータ科学者/プログラマの努力。
これらのコードは、データをきれいにするために使用されている2つの利点があります。第一には、書かれた関数から、パラメータを直接使用することができます変更されません。第二は、非常にシンプルですが、また、コメントは最長11行で。
リー用途が与えられたコードの各部分を導入することで、コメントは、コードに示されています。
私たちは、一緒にコレクションを、この記事を置くツールボックスとして使用することができます。
8カバー大きいシーンデータクレンジングコード
即ち、8つのシーンの合計をカバーする、クリーニングデータコード:
データ型を変更、複数の列を削除するには、デジタル可変カテゴリ変数を変換は、文字列の列を削除する、データの欠落を確認し、削除2つの文字列連結(条件)でのカラムスペースは、タイムスタンプ(書式文字列から日付と時刻)に変換
複数の行を削除する
便利df.dropと、すべての列が使用され、データ解析中指定した列を削除します。
デフdrop_multiple_col(col_names_list、DF): '' ' - >は、その列名の入力に基づいて複数の列をドロップします- >列名、DFのOUTPUTの一覧- AIMの列をドロップしてdfを>更新を------' 'dfを'。 ドロップ(col_names_list、軸= 1、インプレース= TRUE)DF戻り
データ型を変換する
大規模なデータセットは、メモリを節約するために、データ型を変換する必要がある場合。
デフchange_dtypes(col_int、col_float、DF ): '' 'AIMは- ------>少ないメモリでdfを更新- >列名(int型、float型)、DF出力の一覧が- >メモリINPUTを保存するdtypesを変更します' '' [col_int] =のDFたdf '(のfloat32 ')[col_float] =のDF [col_float] .astype DF(INT32)'[col_int] .astype'
数値変数にカテゴリ変数を変換するための
機械学習モデルの数は数値変数の形式を記載。このカテゴリ変数は、最初の数値変数を変換する必要があります。同時に、あなたはまた、データの視覚化のために、カテゴリ変数を維持することができます。
DEF convert_cat2num(DF):#は、変換 { 'YES':1、 'NO':0}、 'col_2':数値変数num_encode = { 'COL_1'にカテゴリ変数を{ 'WON':1、 '失う':0 「DRAW」:0}} df.replace(num_encode、インプレース=真)
欠落したデータをチェックするため
に、各列の欠落データの数を確認したい場合は、次のコードを使用すると、最速の方法です。それはあなたのデータクリーニングや分析業務の方法を次のステップを決定するために、より多くの列データが欠落しているものをよりよく理解することができます。
デフcheck_missing_data(DF):
文字列は、列を削除
しますが、[「COL_1」] dfを使用することができます文字列で表示され、時には新しいキャラクターや他の変な記号があるでしょう。それは、単にそれらを処分交換してください。
デフ(DF)をremove_col_str :.#データフレームの列に文字列の一部を削除- COL_1のDF [ 'COL_1']は交換してください( '\ n'は、 ''、正規表現=真を、インプレース= TRUE)#の後のすべての文字を削除& #列に(を含む&#) - 。COL_1のDF [ 'COL_1']置き換え( '&#*'、 ''、正規表現= Trueの場合、インプレース=真)
スペースの列を削除し
たデータが混乱しているとき、どのようなもの発生する可能性があります。多くの場合、文字列の先頭にいくつかのスペースがあるでしょう。削除列で文字列の先頭のスペースは、次のコードは非常に便利であるとき。
デフremove_col_white_space(DF):#削除 [COL] =のDF [COL] .str.lstrip()DF文字列の先頭に空白を
2つの文字列の連結(条件付き)を持つ
あなたは条件付きで文字列にしたいとき2、役に立つコードを一緒に接続するとき。たとえば、最初の列の末尾の文字のいくつかを設定することができ、その後、2番目の列は互いに結合されています。
接続が完了した後、必要であれば、手紙の最後に削除することができます。
DEF concat_col_str_condition(DF):#1連結ストリングと2列の最初の列の最後の3つの文字場合は、 'PIL'マスク= DF [ 'COL_1'] str.endswith( 'PIL'、偽= NA)col_new = DFの[います。 マスク] [ 'COL_1'] + DF [マスク] [ 'col_2'] col_new.replace( 'PIL'、 'emtpyスペースで' PIL '真の正規表現=、インプレース= TRUE)#置き換えるには、'
から(タイムスタンプを変換しました日付時刻形式の文字列)
の時系列データを扱うとき、私たちは、タイムスタンプ列の文字列の形式が発生する可能性があります。
これは、フォーマットを使用すると、データが意味のある分析するために、文字列、日付時刻形式(または当社のニーズに応じて、他の指定された形式)に変換することを意味します。
----------------
免責事項:この記事は元の記事CSDNブロガー「HelloWorld_MHC」であり、BY-SAの著作権契約、複製、元のソースのリンクと、この文を添付してくださいCC 4.0に従ってください。 。
オリジナルリンクします。https://blog.csdn.net/weixin_38175358/article/details/86521813
利用可能8 Pythonコードのデータクリーニング、コピー
おすすめ
転載: www.cnblogs.com/bighammerdata/p/11647832.html
ランキング