我有一个Web应用程序,它由位于同一服务器上的REST API支持.假设我有一个Task可访问的资源/api/task/<task_id>和一个网页/create-task,它基本上只是一个创建任务的表单.有几种方法可以做到:
a)使用Javascript与REST API通信(不想这样做)
b)直接在数据库中创建对象
@app.route('/create-task', methods=['POST'])
def create_task(self):
    # create an object
    try:
        task = Task(request.form)
    except:
        # handle errors and put them to form
        pass
    # save it into db
    task.save()
Run Code Online (Sandbox Code Playgroud)
c)使用requests库调用REST API
@app.route('/create-task', methods=['POST'])
def create_task(self):
    # send request to REST API
    r = requests.post(url_for('api.task', _external=True), json=request.form.data)
    if r.status_code != 200:
        # handle errors and put them to form
        pass
Run Code Online (Sandbox Code Playgroud)
您认为哪种选择是最佳做法?考虑与错误处理和表单相关的问题.
有关的奖金问题flask-restful.假设我已经建立了一个使用flask-restful构建的工作API,并希望使用选项b).我可以以某种方式使用TaskResource.post这样做吗?
是否可以从HDF5中读取行的随机子集(通过pyTables,或者最好是pandas)?我有一个非常大的数据集,有数百万行,但只需要几千个样本进行分析.从压缩的HDF文件中读取怎么样?
我有一个嵌套字典列表,例如,ds = [{'a': {'b': {'c': 1}}}]并希望在推断嵌套字典的架构时从中创建一个Spark DataFrame .使用sqlContext.createDataFrame(ds).printSchema()给我以下架构
root
 |-- a: map (nullable = true)
 |    |-- key: string
 |    |-- value: map (valueContainsNull = true)
 |    |    |-- key: string
 |    |    |-- value: long (valueContainsNull = true)
Run Code Online (Sandbox Code Playgroud)
但我需要的是这个
root
 |-- a: struct (nullable = true)
 |    |-- b: struct (nullable = true)
 |    |    |-- c: long (nullable = true)
Run Code Online (Sandbox Code Playgroud)
可以通过首先将字典转换为JSON然后jsonRDD像这样加载它来创建第二个模式sqlContext.jsonRDD(sc.parallelize([json.dumps(ds[0])])).printSchema().但是对于大文件来说这会非常麻烦.
我考虑过将字典转换为pyspark.sql.Row()希望数据框推断模式的对象,但是当字典有不同的模式时(例如,首先缺少某些键),它不起作用.
有没有其他方法可以做到这一点?谢谢!
我试图将简单的生存模型从这里(介绍中的第一个)从PyMC 2移植到PyMC 3.然而,我没有找到任何等同于"观察"的装饰器,并且我尝试编写新的分发失败了.有人可以提供一个例子,如何在PyMC 3中完成这项工作?
我正在尝试从github存储库下载文件,我想使用ssh(使用scp)而不是通过HTTPS下载它.这甚至可能吗?你举个例子吗?谢谢.