Quantcast
Channel: プログラミング
Viewing all articles
Browse latest Browse all 8646

【Python】Pandas の .apply() 関数に例外処理を追加する方法 - ものづくりのブログ

$
0
0

Pandas の .apply() 関数に lambda の処理を入れていたのですが、1レコードでも例外が含まれていると全ての処理に影響してしまうという問題がありました。

コード

問題のコード

import pandas as pd
import numpy as np

_df=pd.DataFrame(np.array([['a','a'], [1,2]]))

try:
    _df[0].apply(lambda x: int(x)+1)

exceptException: int(x)+1
    logger.warning(f"no change.")    

改良

import pandas as pd
import numpy as np

_df=pd.DataFrame(np.array([['a','a'], [1,2]]))

def_hoge(x):
    try:
        returnint(x)+1except:
        return'error:' + str(x)

try: 
    _df[0].apply(lambda x: _hoge(x))
exceptException:
    logger.warning(f"no change.") 

Viewing all articles
Browse latest Browse all 8646