pandas nanデータの処理

実現したいこと

文字数を取得したく.str.len()を使っていたのですが、
列のデータがすべて空の場合、エラーが出てしまうため
どのようにしたらいいのか教えて頂きたいです。

Can only use .str accessor with string values!

試したこと

① astype(str).str.len()で処理すると3となってしまう。
② 空の場合の結果はNaNがいいのですが、.fillna('').str.len()で処理すると
0になってしまう。

該当のソースコード

import numpy as np import pandas as pd df= pd.DataFrame( data={'col1': [10, 20, 30, 40], 'col2': [np.nan, np.nan, np.nan,np.nan]}) df['col2_len']=df['col2'].str.len()

コメントを投稿

0 コメント