如何在python中将分类列转换为整数列? (使用NaN)

问题描述 投票:0回答:1

我的数据框在下面。

respid  ID  month   country continental product cat cat2    cat3    AO1 ... A1  DF1 QFFC1   QSFD1   F1  AFCA1   ZB1 ZA1 ZB1 ZD1
0   10000139.0  190010001.0 201906.0    USA North America   Smartphone  Apple   CMP tact    10  ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
1   10000202.0  190010002.0 201906.0    USA North America   Smartphone  Samsung SEC tact    8   ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2   10000286.0  190010003.0 201906.0    USA North America   Smartphone  Apple   CMP tact    10  ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

我想将多列的数据类型更改为整数。 (A1〜A3)因此,我尝试了以下代码,但发生了如下错误

df.iloc[:, 4: ].astype('int')

ValueError:无法将float NaN转换为整数

我该如何隐秘?

谢谢。

python pandas types nan
1个回答
0
投票

您必须先放置a或填写a。

#will remove line with Nan inside
df.dropna(inplace=True)

#will replace Nan by a value e.g "- 1" 
df.fillna(-1,inplace=True)
© www.soinside.com 2019 - 2024. All rights reserved.