ホームページ > バックエンド開発 > Python チュートリアル > Pandas DataFrame で空白値 (空白) を NaN に置き換えるにはどうすればよいですか?

Pandas DataFrame で空白値 (空白) を NaN に置き換えるにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-30 12:57:26
オリジナル
404 人が閲覧しました

How do I replace blank values (whitespace) with NaN in a Pandas DataFrame?

Pandas で空白値 (空白) を NaN に置き換える

データ クリーニングは、データ分析における重要な手順です。一般的なタスクの 1 つは、空白値 (空白) を NaN に置き換えることです。これは Pandas を使用して効率的に行うことができます。

これを実現するには、df.replace() 関数を利用します。この関数により、DataFrame 値に対する正規表現ベースの検索および置換操作が可能になります。実装方法は次のとおりです:

<code class="python">import numpy as np
import pandas as pd

df = pd.DataFrame([
    [-0.532681, 'foo', 0],
    [1.490752, 'bar', 1],
    [-1.387326, 'foo', 2],
    [0.814772, 'baz', ' '],
    [-0.222552, '   ', 4],
    [-1.176781,  'qux', '  '],
], columns='A B C'.split(), index=pd.date_range('2000-01-01','2000-01-06'))

# Replace fields that contain only whitespace (or are empty) with NaN
print(df.replace(r'^\s*$', np.nan, regex=True))

# Output:
#                    A    B   C
# 2000-01-01 -0.532681  foo   0
# 2000-01-02  1.490752  bar   1
# 2000-01-03 -1.387326  foo   2
# 2000-01-04  0.814772  baz NaN
# 2000-01-05 -0.222552  NaN   4
# 2000-01-06 -1.176781  qux NaN</code>
ログイン後にコピー

このコードは、空白のみを含むフィールドまたは空のフィールドを置き換えることに注意してください (つまり、正規表現 r'^s*$'** と一致します)。有効なデータに空白が含まれている場合は、それに応じて正規表現を調整します (たとえば、r'^s ' の末尾から **$ を削除します)。

以上がPandas DataFrame で空白値 (空白) を NaN に置き換えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート