Skip to main content
 首页 » 编程设计

python之Pandas 数据框用 nan 替换 em-dash

2025年05月04日19www_RR

我正在尝试使用 pd.read_excel 将大量主要包含数字数据的 .xls 和 .xlsx 文件读入 python。但是,这些文件使用 em-dash 表示缺失值。我正在尝试让 Python 将所有这些 em-dashes 替换为 nans。我似乎找不到让 Python 识别字符的方法,更不用说替换它了。我尝试了以下无效

df['var'].apply(lambda x: re.sub(u'\2014','',x)) 

我也简单的试过

df['var'].astype('float') 

将数据框中的所有 em-dash 转换为 nans,同时将数字数据保持为 float 的最佳方法是什么?

请您参考如下方法:

您应该在较早的阶段发现错误。告诉 pd.read_excel() 将破折号视为 NaN:

df = pd.read_excel(..., na_values=['–','—'])