python - 使用 from_pandas 从 oracle 数据库到 vaex 的 5000 万条记录
问题描述
下面的代码来自 vaex 文档:
pandas_df = pd.read_sql_query('SELECT * FROM MYTABLE', con=engine)
df = vaex.from_pandas(pandas_df, copy_index=False)
描述
我的数据多于 RAM。但是,当我使用上面的代码时,它会尝试提取 panda 数据框中的所有数据。所以为了解决这个问题,我使用了提供生成器的 chunksize 属性。
要再次从生成器转换为 pandas 数据帧,它需要内存。下面是我试过的代码。
import vaex
df = pd.read_sql_query('select * from "user"."table"', conn, chunksize=1000000)
chunk_list = []
for i in df:
chunk_list.append(i)
data = pd.concat(chunk_list)
df2 = vaex.from_pandas(data)
alldat=df2.concat(df2)
请帮我解决这个问题。
解决方案
推荐阅读
- javascript - Mapbox - 将依赖线与符号一起整理
- swift - why my logout button can logout but can't switch the view
- python - 如何从下拉列表中保存到 csv?
- snowflake-cloud-data-platform - 将数据从共享位置自动加载到雪花中
- python - 如何序列化Django rest框架中的分组记录?
- javascript - 如何使用php在ajax函数中将选择框的数组值作为数组获取
- python - Sympy 中的枫二叉树表示
- javascript - 如何调整异步 Javascript 中发生的事件顺序?
- javascript - 如何在反应打字稿中将函数作为道具传递
- google-sheets - Google 表格将两个列表作为查询条件