项目场景:
作者在ArcGIS中将数据导出为dbf文件,并打算在python中将其转化为csv格式的文件时遇到一系列问题而无法实现应用随机森林对数据的预测。故在此分享一下本人遇到的问题与解决办法,希望能对遇到相同问题的读者有所帮助。
问题描述
当数据量较小时,ArcGIS、python都能处理相应数据。但当数据体量较大时,就会遇到许多问题:
数据从ArcGIS中导出为dBase表,但在python中应用代码转为csv文件时因数据量过大而崩溃。数据从ArcGIS中导出为dBase表时因数据量过大导出时就发生缺失。例:所用研究区栅格转点后有1887万+个数据点,但转为dBase表后只有1641万+数据。(ArcGIS不会报错,文件会导出成功)
![dBase表数据](https://img-blog.csdnimg.cn/a3faa634df1c4e6d8c1fa340ff4ab639.png#pic_center)
原因分析:
针对问题1,原因已述:python处理不了过大体量的数据。针对问题2,ArcGIS中对文件大小有限制,dBase文件大小不超过2G。
相应文件大小信息见 http://t.csdn.cn/xBvfq ![dBase表大小限制](https://img-blog.csdnimg.cn/944edc255aed42289085fa0e3d76a7a0.png#pic_center)
解决方案:
针对问题1,可以在ArcGIS中导出数据为dBase表后在spss中将其转化为.csv文件。针对问题2,在ArcGIS中导出的dBase表无法在spss中打开,会显示 发生致命错误,客户端与服务器断开 。解决办法,数据在ArcGIS中导出时选择文本文件(.txt),之后再在spss中转为.csv文件。
|