假设我正在对几个因变量(d1
,d2
,d3
)进行线性回归,以预测数据流。
id
每当计数更改值(即app = dash.Dash()
app.layout = html.Div([
dcc.Interval(id='data-stream', interval=1000, n_intervals=0),
html.Div(id='count'),
html.Div(id='betas'),
])
@app.callback(
Output('count', 'children'),
[Input('data-stream', 'n_intervals')]
)
def get_count(data):
df = pd.read_csv(*some url that updates and returns a csv*)
count = len(df['id'])
return html.H2(f'The count is {count}')
@app.callback(
Output('betas', 'children'),
[*what goes in here?*]
)
def run_regression(*arg_inputs):
# Run Regression here that outputs a table of betas
而不是依赖于时间间隔时,如何进行回调(运行回归)?
我看过html.Div(id='count')
的文档,甚至尝试将Event
作为Input('count', 'children')
函数的回调装饰器的inputs
参数,它仍然流而不是在观察计数发生变化时重新运行回归。
答案 0 :(得分:0)
您的输入应为count
,您可以使用类似的输入
@app.callback(
Output('betas', 'children'),
Input('count','value')
)
def run_regression(count_value):
# Run Regression here that outputs a table of betas
这里的输入就像您提到的count的长度一样,因此您可以使用它执行所需的操作(确保可以在函数run_regression中添加打印以打印count_value来查看它的外观) 如果您需要更多帮助,则应解释run_regression函数应该做什么;)