python-3.x - 如何从标准输入读取 dask 数据帧?
问题描述
对于 dask 数据框,我想sys.stdin
作为输入
dask.dataframe.read_csv(sys.stdin, sep=" ", header=None)
但是, dask.dataframe 只接受文件路径/路径作为输入,所以它给出了一个错误。
有没有办法用 dask 从 stdin 读取而不必将整个 stdin 保存到文件中?
在这里,一个非常大的文件的内容作为输入被传送到 python 程序。
解决方案
在这种情况下的附加值dask
尚不清楚,因为大概stdin
足够小以适合内存(如果不是,那么有趣的是为什么不持久化数据)。无论如何,这是一种可能的工作流程:
import sys
import pandas as pd
import dask.dataframe as dd
df = pd.read_csv(sys.stdin, sep=" ", header=None)
ddf = dd.from_pandas(df, npartitions=10) # adjust as appropriate
推荐阅读
- linux - 从命令行打印 doc 文件
- windows - Process.run: ProcessException: 系统找不到指定的文件
- python - 了解双引号与单引号的字符串生成
- swift - 在分屏中检测尺寸视图
- javascript - 在一个终端中一次运行多个脚本
- r - 我们可以按组使用 data.table setorder 吗?
- geoserver - 我在哪里可以找到 GeoServer 的 ECCN 编号?
- node.js - Worker->Master->Worker 是否可以在 Nodejs 中使用基于 promise 的消息?
- python - 泡泡洗牌 - 加权洗牌
- r - 加载 .rda 数据集总是返回相同的