こんにちは、JS2IIUです。
Streamlitでアプリを開発する際、コードとその実行結果を表示したいと思ったことはありませんか? st.echoを使えば、実行可能なコードをアプリ上に表示することができます。今回もよろしくお願いします。
st.echoとは?
st.echoは、withブロック内のコードをアプリ上に表示し、かつ実行するためのStreamlitの機能です。
シグネチャとパラメータ
st.echo(code_location='above')code_location: コードを表示する位置を指定します。"above"(デフォルト) は実行結果の上にコードを表示し、"below"は実行結果の下にコードを表示します。
st.echoの基本的な使い方
st.echoはwith文と共に使用します。 withブロック内のコードがアプリ上に表示され、実行されます。
import streamlit as st
with st.echo():
st.write('This code will be printed')このコードを実行すると、st.write('This code will be printed')というコードが表示され、その下にThis code will be printedという実行結果が表示されます。
st.echoの活用例
例1: データ分析の過程を見せる
st.echoを使うことで、データ分析の過程をユーザーにわかりやすく示すことができます。
import streamlit as st
import pandas as pd
with st.echo():
df = pd.DataFrame({
'first column': [1, 2, 3, 4],
'second column': [10, 20, 30, 40]
})
st.write(df)このコードでは、Pandasを使ってデータフレームを作成し、表示しています。 st.echoによって、データフレームの作成過程がコードと共に表示されるため、ユーザーはどのようにデータが処理されているかを理解することができます。
例2: 機械学習モデルの学習過程を見せる
機械学習モデルの学習過程をst.echoで表示することで、モデルの透明性を高めることができます。
import streamlit as st
from sklearn.linear_model import LinearRegression
with st.echo():
X = [[1], [2], [3], [4]]
y = [2, 4, 6, 8]
model = LinearRegression()
model.fit(X, y)
st.write('Coefficients:', model.coef_)このコードでは、線形回帰モデルを作成し、学習させています。 st.echoによって、モデルの学習過程がコードと共に表示されるため、ユーザーはモデルがどのように学習されているかを理解することができます。
このコードでstreamline runすると表示に少し時間がかかります。
まとめ
st.echoは、Streamlitアプリでコードを表示するための便利な機能です。 データ分析、機械学習、その他様々な場面で活用することができます。 st.echoを活用して、より分かりやすく、透明性の高いアプリを作成しましょう。
参考になるWEBサイト
- st.echo – Streamlit Docs
- How does st.echo() work? – Using Streamlit
- Streamlitを使ったお手軽Webアプリ開発 #Python – Qiita
最後に、書籍のPRです。
最新のOpenAIのチャットAPIの使い方もしっかりと解説されている良書です。2024年11月初版発行、「LangChainとLangGraphによるRAG・AIエージェント[実践]入門」西見、吉田、大嶋著。
最後まで読んでいただきありがとうございます。73

