Я пытаюсь выяснить, как использовать возвращенный Dataframe из функции в другой функции. Это мой текущий код:
# Top n countries having lowest confirmed cases
def lowest_eu_latest_update(n):
n = int(n)
return eu_daily_df.groupby('Country').sum().sort_values('Confirmed', ascending =False).reset_index().head(n).style.apply(highlight_col, axis=None)
l_sorted_eu_daily_df = eu_daily_df.groupby('Country').sum().sort_values('Confirmed', ascending =False).reset_index()
# Visualize
def bubble_chart(n):
fig = px.scatter(l_sorted_eu_daily_df.head(n), x= "Country", y="Confirmed", size="Confirmed", color="Country",
hover_name="Country", size_max=60)
fig.update_layout(
title = "Top " + str(n) + " Countries having lowest confirmed cases",
xaxis_title = "Countries",
yaxis_title= "Confirmed Cases",
width = 900
)
fig.show()
# interact
interact(lowest_eu_latest_update, n='10')
interact(bubble_chart, n=10)
Я переписал код следующим образом:
def lowest_eu_latest_update(n):
n = int(n)
l_sorted_eu_daily_df = eu_daily_df.groupby('Country').sum().nsmallest(n, 'Confirmed').reset_index().style.apply(highlight_col, axis=None)
return l_sorted_eu_daily_df
# Visualize
def bubble_chart(n):
fig = px.scatter(l_sorted_eu_daily_df.head(n), x= "Country", y="Confirmed", size="Confirmed", color="Country",
hover_name="Country", size_max=60)
fig.update_layout(
title = "Top " + str(n) + " Countries having lowest confirmed cases",
xaxis_title = "Countries",
yaxis_title= "Confirmed Cases",
width = 900
)
fig.show()
# interact
interact(lowest_eu_latest_update, n='10')
interact(bubble_chart, n=10)
Я знаю, что l_sorted_eu_daily_df
является локальной переменной, я пытался global l_sorted_eu_daily_df
, но это не так не работает
Кроме того, есть ли способ, которым я могу нарезать DataFrame в Sub-DataFrame в зависимости от условия. Например, DataFrame и я хотим вернуть Sub-DataFrame на основе условия Country == 'United Kingdom'
, а Sub-DataFrame можно использовать в другой функции.
Пожалуйста, дайте мне знать, если у меня слишком много вопросов. Любой, хотя был бы оценен.