时间:2021-05-22
今天业务上碰到用pandas处理一个大文件的内存不够问题,需要做concat 合并多个文件,每个文件数据在1.4亿行左右。当时第一反应是把dataframe分割成多块小文件处理,后面发现即使pandas内存问题解决了,用pickle做保存数据时也会提升内存不够的报错,后来把dataframe对象转化成string,发现内存占用减少了近一半。
所以打算用先转成string再dump到离线文件里,官网文档上只有to_string的说明,而从string转dataframe却没有提供直接的函数。
其实很简单,我们可以把string放到一个文件对象里,然后通过read_csv函数来创建dataframe对象。
import sysif sys.version_info[0] < 3:from StringIO import StringIOelse:from io import StringIOimport pandas as pdTESTDATA=StringIO("""col1;col2;col31;4.4;992;4.5;2003;4.7;654;3.2;140""")df = pd.read_csv(TESTDATA, sep=";")以上这篇pandas string转dataframe的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
pandas转数组np.array(pandas)数组转pandaspandas.DataFrame(numpy)pandas连接,只是左右接上,不合并值df=
对于pandas的dataframe,绘制直方图方法如下://pdf是pandas的dataframe,delta_time是其中一列//xlim是x轴的范围,
在用pandas包和numpy包对数据进行分析和计算时,经常用到DataFrame和array类型的数据。在对DataFrame类型的数据进行处理时,需要将其转
通过?pandas.DataFrame.shift命令查看帮助文档Signature:pandas.DataFrame.shift(self,perio
本文主要演示pandas中DataFrame对象corr()方法的用法,该方法用来计算DataFrame对象中所有列之间的相关系数(包括pearson相关系数、