下面的代码来自 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)
请帮我解决这个问题。