AttributeError: ‘float’ object has no attribute ‘split’
エラーが発生した理由は、DataFrameの"ITEM"列に欠損値(NaN)が含まれているためです。split()メソッドは文字列に対してのみ動作するため、欠損値に対しては適用できません。
欠損値を処理するために、split_item_by_space()関数内で欠損値を適切に処理する必要があります。以下はその方法です。
python
import pandas as pd
import numpy as np
# 仮のDataFrameを作成
data = {'ITEM': ['item1 item2', np.nan, 'item3 item4', 'item5 item6']}
df = pd.DataFrame(data)
# "ITEM"列を空白で分割する関数
def split_item_by_space(item):
if isinstance(item, str):
return item.split()
else:
return []
# "ITEM"列を空白で分割
df['ITEM'] = df['ITEM'].apply(split_item_by_space)
print(df)
このようにすることで、欠損値を適切に処理して、split()メソッドが正しく動作するようになります。

ディスカッション
コメント一覧
まだ、コメントがありません