web-dev-qa-db-ja.com

python-TypeError:順序付けできないタイプ:str()> float()

私はcsvファイルがあり、v3列がありますが、その列にはいくつかの 'nan'行があります。行を除外するにはどうすればよいですか。

 dataset = pd.read_csv('mypath') 

    enc = LabelEncoder()
    enc.fit(dataset['v3'])
    print('fitting')
    dataset['v3'] = enc.transform(dataset['v3'])
    print('transforming')
    print(dataset['v3'])
    print('end')

編集:V3列にはA、C、B、A、C、D 、、、 A、Sがあり、(1,2,3,1,2,4 , 1、 7)

12
Thoram Mastero

〜isnull()を使用してnan値をマスクします。

mask = ~dataset['v3'].isnull()
dataset['v3'][mask] = enc.fit_transform(dataset['v3'][mask])

別の方法は、自動的にnanを処理するpandas.factorize関数を使用することです(それらに-1を割り当てます):

dataset['v3'] = dataset['v3'].factorize()[0]
13
Rob