Pandas读取CSV生成DataFrame时如何保留字段中的原有空格
Pandas读取CSV保留字段所有空格的配置方法
核心解决方案
你只需要在现有read_csv代码基础上补充两个参数即可,修改后的代码如下:
pd.read_csv( 'data.csv', dtype="string", skipinitialspace=False, keep_default_na=False )
参数说明
skipinitialspace=False:禁止自动跳过分隔符后的前置空格,确保字段开头的空格会被作为内容完整保留,比如你示例中第四列91开头的空格不会被剔除keep_default_na=False:关闭Pandas默认的空值识别规则,避免全空格的字段(比如你示例中的第三列)被识别为NaN,从而完整保留字段内的所有空格
长度校验示例
读取完成后可通过以下代码验证字段长度是否符合要求:
# 逐列校验长度 assert (df.iloc[:,0].str.len() == 4).all() assert (df.iloc[:,1].str.len() == 7).all() assert (df.iloc[:,2].str.len() == 1).all() assert (df.iloc[:,3].str.len() == 3).all()
内容的提问来源于stack exchange,提问作者Valentyn
相关产品推荐
相关产品推荐

