Tho*_*ero 12 python machine-learning python-3.x pandas scikit-learn
我有一个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')
Run Code Online (Sandbox Code Playgroud)
编辑:V3列有A,C,B,A,C,D ,,, A,S,就像那样,我想把它转换为(1,2,3,1,2,4 ,,, 1, 7)
Rob*_*Rob 14
使用~isnull()掩盖nan值:
mask = ~dataset['v3'].isnull()
dataset['v3'][mask] = enc.fit_transform(dataset['v3'][mask])
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用pandas.factorize函数,它自动处理nans(将它们分配为-1):
dataset['v3'] = dataset['v3'].factorize()[0]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18141 次 |
| 最近记录: |