【问题标题】:Python: Pass a pandas Dataframe as an argument to subprocessPython:将熊猫数据框作为参数传递给子进程
【发布时间】:2019-11-20 12:39:45
【问题描述】:

如何使用子进程将数据帧作为参数发送到带有 spark-submit 的 python 脚本。我已经尝试了下面的代码,但没有成功,因为我们无法连接字符串和对象。

def spark_submit(self, test_cases, email):
    command = 'spark-submit TestRunner.py '+test_cases+" "+email
    print(command)
    process = subprocess.Popen([command], shell=True,
                               stdout=subprocess.PIPE,
                               stderr=subprocess.PIPE)
    output, error = process.communicate()
   status = process.returncode
   print(status)```

【问题讨论】:

  • test_cases你的数据框吗?

标签: python pandas pyspark subprocess spark-submit


【解决方案1】:

您不能连接任何不是字符串(或强制转换为字符串)的内容。我假设您不能直接将数据框作为命令行参数传递,因此我建议将其转换为文件并传递文件路径而不是数据框本身。

df.to_csv('mydf.csv')
command = 'spark-submit TestRunner.py mydf.csv ' + email 

【讨论】:

    猜你喜欢
    • 2015-01-13
    • 2022-01-23
    • 1970-01-01
    • 2021-07-14
    • 2016-08-07
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    • 1970-01-01
    相关资源
    最近更新 更多