数据分析|??Python【Vaex】保姆式教程??

一、Vaex介绍 Vaex是一种更快、更安全、总体上更方便的方法,可以使用几乎任意大小的数据进行数据研究分析,只要它能够适用于笔记本电脑、台式机或服务器的硬盘驱动器。
Vaex是一个开源的DataFrame库,它可以对表格数据集进行可视化、探索、分析,甚至机器学习,这些数据集和你的硬盘驱动器一样大。它可以在一个n维网格上每秒计算超过10亿(10^9)个对象的平均值、和、计数、标准差等统计信息。可视化使用直方图、使用直方图、密度图和3D立体渲染进行可视化。为此,Vaex采用了内存映射、高效的外核算法和延迟计算等概念来获得最佳性能(不浪费内存)。所有这些都封装在一个类似Pandas的API中
二、Vaex的安装

pip install vaex

三、Vaex的安的使用 1、首先将csv文件转换成hdf5文件
数据分析|??Python【Vaex】保姆式教程??
文章图片
# 注意:csv转换成hdf5时column的名称不能含有中文 -- #names –如果为True,则第一行用于列名,否则提供带有名称的字符串列表 #skip_lines –跳过文件开头的行 #skip_after –跳过文件末尾的行 ds = vx.from_ascii("table.asc") ds = vx.from_ascii("table.csv", seperator=",", names=["x", "y", "z"]) -- #filename_or_buffer(str)– CSV文件路径或类似文件的路径 #copy_index(bool)–通过pandas读取源时的复制索引 #str convert(bool)–将文件转换为hdf5文件以进行优化,也可以是路径。CSV文件将分块读取:使用提供的chunk_size参数或默认大小读取。每个块将保存为一个单独的hdf5文件,然后将它们全部合并为一个hdf5文件。因此,对于大CSV文件,您至少需要磁盘上额外空间的两倍。用于转换的默认chunk_size为500万行,相当于纽约出租车数据集示例中大约1Gb的内存。 #kwargs –额外的关键字参数,当前传递给Pandas的read_csv函数,但其??实现可能会在将来的版本中更改。 #chunk_size(int)–如果CSV文件太大而无法容纳在内存中,则此参数可用于大块读取CSV文件。例如: import vaex for i, df in enumerate(vaex.from_csv('taxi.csv', chunk_size=100_000)): df = df[df.passenger_count < 6] df.export_hdf5(f'taxi_{i:02}.hdf5')

2、导出数据
df.export_csv('va.csv')

3、选择和过滤
# 筛选df.x的数据 selection为选择条件 df.evaluate(df.x, selection=True) df.evaluate(df.x, selection=df.x>0) #获取df.x列中df.x>0的数据(不包含其他列) df_negative = df[df.x < 0] #获取df.x<0的数据(包含其他列)

4、统计
# 计数 求均值 df.count(selection=df.x<0) df.mean(df.x) # 统计df.x在范围limits([-10,10])区间分为shape(64)组,每一组的个数 counts_x = df.count(binby=df.x, limits=[-10, 10], shape=64) #统计df.x,df.y在范围limits([-10, 10], [-10, 20])区间分为shape(64,128)组,每一组的个数 xycounts = df.count(binby=[df.x, df.y], limits=[[-10, 10], [-10, 20]], shape=(64, 128))

【数据分析|??Python【Vaex】保姆式教程??】

    推荐阅读