python处理csv文件缺失值_python 加载数据是-1为缺失值时替换为空

博客分享了两种处理数据中缺失值的策略。第一种是在加载数据时将-1转换为字符串,然后替换为空,再转回数值类型。第二种方法是直接在文件层面将-1替换为null,然后读取并使用pandas的replace方法替换为np.nan。
摘要由CSDN通过智能技术生成

最近在工作时,加载数据,原始数据用-1代表缺失值,之前加载的时候替换一直没有成功,后来直接把原文件的给改下,才去替换的。

今天 试了下如下方法,可行:

1. 加载数据时直接加载为str型;

2. 把-1替换为空;

3. 把转换后的字符型又给转成数值型即可。

56f2dbb1a5d2

=====================================================================================

方法2:

1. 打开文件直接把文件里面-1替换成null,并关闭

2.  加载csv文件,然后再replace替换np.nan

```

path_input = r'E:\ref_2020_11_9.csv'

pout_file  = r'E:\ref_2020_11_9_001.csv'

print("before")

fout = open(pout_file,"w")

content = open(path_input).read().split("\n")[0:-1]

for line in content:

new_line = line.replace("-1","null")

fout.write("%s\n" % (new_line))

fout.close()

print("work finish")

aaa = pd.read_csv(pout_file)

uh_tc_feature = aaa.replace("null.0", np.nan)

```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值