具有 nan 值的十六进制到十进制的转换

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

我正在尝试将由十六进制值组成的 Pandas 数据框列

data['hexValues']
转换为十进制。

data["decValues"] = data.apply(lambda row: int(str(row["hexValues"]), 16), axis=1)

这行得通,但是列

hexValues
看起来像这样

0       FF
1        F
2      nan
3      nan
4     FFFF
5     FFFF
6        F
7        F
8        F
9        F
10      FF
11     nan
12     nan

我想跳过

nan
值,所以如果值为
nan
,则不会发生转换。我想过使用
try-except-else
,但我不确定我该怎么做。你能帮帮我吗?

python pandas type-conversion hex try-catch
1个回答
0
投票

用途:

data["decValues"] = [int(str(x), 16) if pd.notna(x) else np.nan for x in data["hexValues"]]
© www.soinside.com 2019 - 2024. All rights reserved.