python - 在 DataFrame 上使用 str.split(expand=True) 处理海量数据集
问题描述
我正在使用从 .txt 类型文件中作为 DataFrame 读取的~800,000,000 - 1,000,000,000 行的数据集。
此 DataFrame 作为单列读入,我必须使用 df[column_name].str.split(expand=True) 来展开每个值。这为一组空白之间的每个值提供了一个唯一的列。
该数据集的一个警告是,读入这一列的值的数量可能会有所不同——但如果任何值“缺失”,它们就会从序列的末尾缺失,而不是介于两者之间。
例如:
df_in
0
0 123 203 113 32
1 555 22 155
2 670 12
然后使用df_out = df_in['0'].str.split(expand=True)
df_out
0 1 3 4
0 123 203 113 32
1 555 22 155 None
2 670 12 None None
问题是,在我得到这些遇到MemoryError
问题的庞大数据集之前,这种方法运行良好。
有没有办法处理这些更大的数据集?也许使用多处理?
需要注意的是,保持 DataFrame 的索引很重要。
解决方案
推荐阅读
- html - 引导滑块位于导航栏后面
- mysql - 最后一个 CSV 列中的 MySQL NULL 可能
- typescript - 通过对象类型联合将值传递给方法
- python - 基于python中2个短序列的存在过滤行
- android - 为什么我在 Flutter 中的原生 android 代码显示错误?
- r - R栅格时间序列堆栈循环统计
- sql - 在查询中使用纬度经度对计算距离
- android - 在 Dagger/MVP 应用程序中放置业务逻辑的位置
- tensorflow - 如何将 TensorFlow 模型转换为 .mlmodel?
- javascript - FullCalendar Spring MVC