Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将for循环输出元组转换为dataframe python_Python_Loops_Dataframe_Tuples_Knime - Fatal编程技术网

将for循环输出元组转换为dataframe python

将for循环输出元组转换为dataframe python,python,loops,dataframe,tuples,knime,Python,Loops,Dataframe,Tuples,Knime,大家好,我正在Knime中执行本网站中的python代码,使用Knime Python扩展,但我需要将最好的3个模型配置导出到一个数据帧中,该数据帧由for循环生成,并表示为一个元组 原始代码的最后一位是 if __name__ == '__main__': # load dataset series = read_csv('daily-total-female-births.csv', header=0, index_col=0) data = series.value

大家好,我正在Knime中执行本网站中的python代码,使用Knime Python扩展,但我需要将最好的3个模型配置导出到一个数据帧中,该数据帧由for循环生成,并表示为一个元组

原始代码的最后一位是

if __name__ == '__main__':
    # load dataset
    series = read_csv('daily-total-female-births.csv', header=0, index_col=0)
    data = series.values
    print(data.shape)
    # data split
    n_test = 165
    # model configs
    cfg_list = sarima_configs()
    # grid search
    scores = grid_search(data, cfg_list, n_test)
    print('done')
    # list top 3 configs
    for cfg, error in scores[:3]:
        print(cfg, error)
而且应该回来

done
[(0, 1, 2), (2, 0, 2, 0), 't'] 54.767582003072874
[(0, 1, 1), (2, 0, 2, 0), 'ct'] 58.69987083057107
[(1, 1, 2), (0, 0, 1, 0), 't'] 58.709089340600094
因此,我修改了代码,尝试了2次失败,如下所示:

尝试次数:1

if __name__ == '__main__':
    # load dataset
    series = read_csv('C:\\Users\\Downloads\\shampoo.txt', header=0, index_col=0, date_parser=custom_parser)
    data = series.values
    print(data.shape)
    # data split
    n_test = 12
    # model configs
    cfg_list = sarima_configs()
    # grid search
    scores = grid_search(data, cfg_list, n_test)
    print('done')
    # list top 3 configs
    for cfg, error in scores[:3]:
        df=pd.DataFrame(cfg, error)
        output_table = df
尝试次数:2次

if __name__ == '__main__':
    # load dataset
    series = read_csv('C:\\Users\\Downloads\\shampoo.txt', header=0, index_col=0, date_parser=custom_parser)
    data = series.values
    print(data.shape)
    # data split
    n_test = 12
    # model configs
    cfg_list = sarima_configs()
    # grid search
    scores = grid_search(data, cfg_list, n_test)
    print('done')
    # list top 3 configs
    for cfg, error in scores[:3]:
        df.append({'cfg': cfg, 'error': error},ignore_index=True)
    output_table = df
问题是Knime需要定义一个输出表,比如一个数据帧来执行节点(最小的处理单元)

我希望定义输出_表,如下图所示()


谢谢

问题在于,您的主代码的结构类似于命令行python脚本,也就是说,它需要
\uuuuuuu name\uuuuu=='\uuuuuuu main\uuuu'
。事实并非如此。您可以尝试在
if
构造之外添加
print(\uuuuu name\uuuu)
语句。对于
Python脚本
节点,我得到了
内置文件


因此,删除或调整if语句将解决问题

Yes,KNIME要求将
output_table
作为数据帧。你试过创造一个吗?看看你是否需要帮助。谢谢@nekomatic,我会看一看,但我认为最后三行代码都试图创建熊猫数据帧。如果缺少什么,请告诉我。