猿问

将无法从 str 更改为 int 的值转换为列中的 nan 值

我正在尝试分配NaN给无法从 str 更改为 int 的列中的值。例如,04可以更改为 int 而Or不能。



富国沪深
浏览 151回答 4
4回答

函数式编程

您可以使用 .isdigit() 首先检查值,然后将其转换为 int

慕村9548890

如果s是你的string价值和n,int然后使用:try:    n = int(s)  except:    n = 'NaN'

慕慕森

假设您使用的是 panda 的 DataFrame。def convert_str_to_digit(x):   if x.isdigit():      return int(x)   else:      return np.nandf['your_column'].apply(convert_str_to_digit, inplace=True)

慕尼黑8549860

这是我的实现:value_list=['04','Or','130.4','AA','','-4']y_list=[]for value in value_list:    try:         y_list.append(int(value))    except:        y_list.append('nan')print(y_list) #[4, 'nan', 'nan', 'nan', 'nan', -4]
随时随地看视频慕课网APP

相关分类

Python
我要回答