繁体   English   中英

python - TypeError:unorderable类型:str()> float()

[英]python - TypeError: unorderable types: 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)

使用~isnull()掩盖nan值:

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

另一种方法是使用pandas.factorize函数,它自动处理nans(将它们分配为-1):

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM