import%20marimo%0A%0A__generated_with%20%3D%20%220.23.1%22%0Aapp%20%3D%20marimo.App()%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20import%20marimo%20as%20mo%0A%0A%20%20%20%20return%20(mo%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%2001%20%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%A8%E3%82%A6%E3%82%A9%E3%83%BC%E3%83%A0%E3%82%A2%E3%83%83%E3%83%97%0A%20%20%20%20%23%23%20Wandas%E3%82%92%E5%8B%95%E3%81%8B%E3%81%97%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%83%8E%E3%83%BC%E3%83%88%E3%83%96%E3%83%83%E3%82%AF%E3%81%A7%E3%81%AF%E3%80%81Wandas%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%80%81%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E7%92%B0%E5%A2%83%E8%A8%AD%E5%AE%9A%E3%82%92%E8%A1%8C%E3%81%A3%E3%81%A6%E3%80%81%E6%9C%80%E5%88%9D%E3%81%AE%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%82%92%E4%BD%93%E9%A8%93%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E5%AD%A6%E7%BF%92%E7%9B%AE%E6%A8%99%3A**%0A%20%20%20%20-%20Wandas%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%A8%E7%92%B0%E5%A2%83%E8%A8%AD%E5%AE%9A%0A%20%20%20%20-%20Jupyter%E7%92%B0%E5%A2%83%E3%81%A7%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AA%E6%93%8D%E4%BD%9C%0A%20%20%20%20-%20%E6%9C%80%E5%88%9D%E3%81%AE%E4%BF%A1%E5%8F%B7%E7%94%9F%E6%88%90%E3%81%A8%E5%8F%AF%E8%A6%96%E5%8C%96%0A%20%20%20%20-%20%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E6%93%8D%E4%BD%9C%E3%81%AE%E7%BF%92%E5%BE%97%0A%0A%20%20%20%20**%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6%3A**%0A%20%20%20%20-%20Python%203.9%E4%BB%A5%E4%B8%8A%0A%20%20%20%20-%20Jupyter%20Notebook%E7%92%B0%E5%A2%83%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%8E%AF%20%E3%81%AA%E3%81%9C%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%8C%E9%87%8D%E8%A6%81%E3%81%8B%0A%0A%20%20%20%20%23%23%23%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%0A%0A%20%20%20%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE%E4%BD%9C%E6%A5%AD%E3%81%A7%E3%81%AF%E3%80%81%E4%BB%A5%E4%B8%8B%E3%81%AE%E3%82%88%E3%81%86%E3%81%AA%E3%82%B5%E3%82%A4%E3%82%AF%E3%83%AB%E3%82%92%E7%B9%B0%E3%82%8A%E8%BF%94%E3%81%97%E3%81%BE%E3%81%99%EF%BC%9A%0A%0A%20%20%20%201.%20**%E3%83%87%E3%83%BC%E3%82%BF%E5%8F%8E%E9%9B%86**%20%E2%86%92%202.%20**%E5%89%8D%E5%87%A6%E7%90%86**%20%E2%86%92%203.%20**%E5%88%86%E6%9E%90**%20%E2%86%92%204.%20**%E5%8F%AF%E8%A6%96%E5%8C%96**%20%E2%86%92%205.%20**%E8%A7%A3%E9%87%88**%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%82%B5%E3%82%A4%E3%82%AF%E3%83%AB%E3%82%92%E5%8A%B9%E7%8E%87%E7%9A%84%E3%81%AB%E5%9B%9E%E3%81%99%E3%81%9F%E3%82%81%E3%81%AB%E3%81%AF%E3%80%81%E9%81%A9%E5%88%87%E3%81%AA%E7%92%B0%E5%A2%83%E8%A8%AD%E5%AE%9A%E3%81%8C%E4%B8%8D%E5%8F%AF%E6%AC%A0%E3%81%A7%E3%81%99%E3%80%82Wandas%E3%81%AF%E3%80%81%E3%81%93%E3%81%AE%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%E3%82%92**1%E3%81%A4%E3%81%AE%E7%B5%B1%E5%90%88%E3%81%95%E3%82%8C%E3%81%9F%E7%92%B0%E5%A2%83**%E3%81%A7%E5%AE%9F%E7%8F%BE%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AA%E6%8E%A2%E7%B4%A2%E3%81%AE%E9%87%8D%E8%A6%81%E6%80%A7%0A%0A%20%20%20%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%A7%E3%81%AF%E3%80%81**%E8%A9%A6%E8%A1%8C%E9%8C%AF%E8%AA%A4**%E3%81%8C%E4%B8%8D%E5%8F%AF%E6%AC%A0%E3%81%A7%E3%81%99%EF%BC%9A%0A%20%20%20%20-%20%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E8%AA%BF%E6%95%B4%E3%81%97%E3%81%AA%E3%81%8C%E3%82%89%E5%8A%B9%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20-%20%E7%95%B0%E3%81%AA%E3%82%8B%E5%8F%AF%E8%A6%96%E5%8C%96%E6%96%B9%E6%B3%95%E3%82%92%E6%AF%94%E8%BC%83%0A%20%20%20%20-%20%E5%87%A6%E7%90%86%E7%B5%90%E6%9E%9C%E3%82%92%E3%83%AA%E3%82%A2%E3%83%AB%E3%82%BF%E3%82%A4%E3%83%A0%E3%81%A7%E8%A9%95%E4%BE%A1%0A%0A%20%20%20%20Jupyter%20Notebook%20%2B%20Wandas%E3%81%AE%E7%B5%84%E3%81%BF%E5%90%88%E3%82%8F%E3%81%9B%E3%81%A7%E3%80%81%E3%81%93%E3%82%8C%E3%82%92%E5%8F%AF%E8%83%BD%E3%81%AB%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%93%A6%20%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%0A%0A%20%20%20%20%23%23%23%20%E6%96%B9%E6%B3%951%3A%20PyPI%E3%81%8B%E3%82%89%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%EF%BC%88%E6%8E%A8%E5%A5%A8%EF%BC%89%0A%0A%20%20%20%20%E6%9C%80%E6%96%B0%E3%81%AE%E5%AE%89%E5%AE%9A%E7%89%88%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20Wandas%E3%81%AE%E6%9C%80%E6%96%B0%E7%89%88%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%0A%20%20%20%20%23%20!pip%20install%20wandas%0A%0A%20%20%20%20%23%20%E9%96%8B%E7%99%BA%E7%89%88%E3%81%AE%E5%A0%B4%E5%90%88%E3%81%AF%EF%BC%88%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%EF%BC%89%0A%20%20%20%20%23%20!pip%20install%20git%2Bhttps%3A%2F%2Fgithub.com%2Fkasahart%2Fwandas.git%0A%0A%20%20%20%20print(%22Wandas%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%3A%22)%0A%20%20%20%20print(%22!pip%20install%20wandas%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E6%96%B9%E6%B3%952%3A%20%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%E3%81%AE%E5%A0%B4%E5%90%88%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%83%AA%E3%83%9D%E3%82%B8%E3%83%88%E3%83%AA%E3%82%92%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%B3%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%AF%EF%BC%9A%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20%E9%96%8B%E7%99%BA%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%EF%BC%88%E3%81%93%E3%81%AE%E3%83%AA%E3%83%9D%E3%82%B8%E3%83%88%E3%83%AA%E3%81%AE%E5%A0%B4%E5%90%88%EF%BC%89%0A%20%20%20%20%23%20!pip%20install%20-e%20.%0A%0A%20%20%20%20print(%22%E9%96%8B%E7%99%BA%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%3A%22)%0A%20%20%20%20print(%22!pip%20install%20-e%20.%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E5%8F%AF%E8%A6%96%E5%8C%96%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%0A%0A%20%20%20%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AA%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AB%E5%BF%85%E8%A6%81%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E7%94%A8%E3%81%AE%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%0A%20%20%20%20%23%20!pip%20install%20ipympl%0A%0A%20%20%20%20print(%22%E5%8F%AF%E8%A6%96%E5%8C%96%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%3A%22)%0A%20%20%20%20print(%22!pip%20install%20ipympl%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%94%A7%20%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%E3%81%A8%E7%A2%BA%E8%AA%8D%0A%0A%20%20%20%20%23%23%23%20%E5%BF%85%E8%A6%81%E3%81%AA%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%81%AE%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%82%92%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%20%20%23%20Matplotlib%20-%20%E5%8F%AF%E8%A6%96%E5%8C%96%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%0A%20%20%20%20import%20numpy%20as%20np%20%20%23%20NumPy%20-%20%E6%95%B0%E5%80%A4%E8%A8%88%E7%AE%97%E3%81%AE%E5%9F%BA%E7%A4%8E%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%0A%0A%20%20%20%20import%20wandas%20as%20wd%20%20%23%20Wandas%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E6%9C%AC%E4%BD%93%20-%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%0A%0A%20%20%20%20%23%20%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E6%83%85%E5%A0%B1%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20print(f%22Wandas%3A%20%7Bwd.__version__%7D%22)%0A%20%20%20%20print(f%22NumPy%3A%20%7Bnp.__version__%7D%22)%0A%20%20%20%20print(f%22Matplotlib%3A%20%7Bplt.matplotlib.__version__%7D%22)%0A%0A%20%20%20%20print(%22%5Cn%E2%9C%85%20%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%81%8C%E6%AD%A3%E5%B8%B8%E3%81%AB%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%EF%BC%81%22)%0A%20%20%20%20return%20plt%2C%20wd%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%8E%A8%20Jupyter%E7%92%B0%E5%A2%83%E3%81%AE%E8%A8%AD%E5%AE%9A%0A%0A%20%20%20%20%23%23%23%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%AE%E6%9C%89%E5%8A%B9%E5%8C%96%0A%0A%20%20%20%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%A7%E3%81%AF%E3%80%81**%E3%82%B0%E3%83%A9%E3%83%95%E3%82%92%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AB%E6%93%8D%E4%BD%9C**%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E9%87%8D%E8%A6%81%E3%81%A7%E3%81%99%EF%BC%9A%0A%20%20%20%20-%20%E3%82%BA%E3%83%BC%E3%83%A0%E3%82%A4%E3%83%B3%2F%E3%82%A2%E3%82%A6%E3%83%88%E3%81%A7%E8%A9%B3%E7%B4%B0%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20-%20%E3%83%91%E3%83%B3%E3%81%A7%E7%89%B9%E5%AE%9A%E3%81%AE%E9%A0%98%E5%9F%9F%E3%81%AB%E7%A7%BB%E5%8B%95%0A%20%20%20%20-%20%E3%83%87%E3%83%BC%E3%82%BF%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88%E3%81%AE%E5%80%A4%E3%82%92%E7%A2%BA%E8%AA%8D%0A%0A%20%20%20%20%60ipympl%60%E3%83%90%E3%83%83%E3%82%AF%E3%82%A8%E3%83%B3%E3%83%89%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%80%81%E3%81%93%E3%82%8C%E3%82%92%E5%AE%9F%E7%8F%BE%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(plt)%3A%0A%20%20%20%20%23%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%AE%E8%A8%AD%E5%AE%9A%0A%20%20%20%20%23%20'%25matplotlib%20widget'%20command%20supported%20automatically%20in%20marimo%0A%0A%20%20%20%20%23%20%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%AE%E3%82%B5%E3%82%A4%E3%82%BA%E3%82%92%E8%A8%AD%E5%AE%9A%20-%20%E8%A6%8B%E3%82%84%E3%81%99%E3%81%95%E3%82%92%E8%AA%BF%E6%95%B4%0A%20%20%20%20plt.rcParams%5B%22figure.figsize%22%5D%20%3D%20(10%2C%206)%20%20%23%20%E5%9B%B3%E3%81%AE%E3%82%B5%E3%82%A4%E3%82%BA%20(%E5%B9%8510%E3%82%A4%E3%83%B3%E3%83%81%E3%80%81%E9%AB%98%E3%81%956%E3%82%A4%E3%83%B3%E3%83%81)%0A%20%20%20%20plt.rcParams%5B%22figure.dpi%22%5D%20%3D%20100%20%20%23%20%E8%A7%A3%E5%83%8F%E5%BA%A6%20(dots%20per%20inch)%0A%0A%20%20%20%20print(%22%E2%9C%85%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%8C%E6%9C%89%E5%8A%B9%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%97%E3%81%9F%EF%BC%81%22)%0A%20%20%20%20print(%22%5Cn%E3%82%B0%E3%83%A9%E3%83%95%E4%B8%8A%E3%81%A7%3A%22)%0A%20%20%20%20print(%22-%20%E3%83%9E%E3%82%A6%E3%82%B9%E3%83%9B%E3%82%A4%E3%83%BC%E3%83%AB%3A%20%E3%82%BA%E3%83%BC%E3%83%A0%E3%82%A4%E3%83%B3%2F%E3%82%A2%E3%82%A6%E3%83%88%22)%0A%20%20%20%20print(%22-%20%E5%8F%B3%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%2B%E3%83%89%E3%83%A9%E3%83%83%E3%82%B0%3A%20%E3%83%91%E3%83%B3%22)%0A%20%20%20%20print(%22-%20%E3%83%9B%E3%83%90%E3%83%BC%3A%20%E3%83%87%E3%83%BC%E3%82%BF%E5%80%A4%E3%81%AE%E8%A1%A8%E7%A4%BA%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20ipympl%E3%81%AE%E7%A2%BA%E8%AA%8D%0A%0A%20%20%20%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E6%A9%9F%E8%83%BD%E3%81%8C%E5%88%A9%E7%94%A8%E5%8F%AF%E8%83%BD%E3%81%8B%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20ipympl%E3%81%8C%E5%88%A9%E7%94%A8%E5%8F%AF%E8%83%BD%E3%81%8B%E7%A2%BA%E8%AA%8D%20-%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E6%A9%9F%E8%83%BD%E3%81%AE%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6%0A%20%20%20%20ipympl%20%3D%20None%0A%20%20%20%20try%3A%0A%20%20%20%20%20%20%20%20import%20ipympl%0A%0A%20%20%20%20%20%20%20%20print(f%22%E2%9C%85%20ipympl%3A%20%7Bipympl.__version__%7D%20-%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E6%A9%9F%E8%83%BD%E3%81%8C%E5%88%A9%E7%94%A8%E5%8F%AF%E8%83%BD%E3%81%A7%E3%81%99%22)%0A%20%20%20%20except%20ImportError%3A%0A%20%20%20%20%20%20%20%20print(%22%E2%9A%A0%EF%B8%8F%20%20ipympl%E3%81%8C%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%22)%0A%20%20%20%20%20%20%20%20print(%22%20%20%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E6%A9%9F%E8%83%BD%E3%81%8C%E5%88%B6%E9%99%90%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%22)%0A%20%20%20%20%20%20%20%20print(%22%20%20%20%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%3A%20pip%20install%20ipympl%22)%0A%20%20%20%20return%20(ipympl%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%8E%B5%20%E6%9C%80%E5%88%9D%E3%81%AE%E4%BF%A1%E5%8F%B7%E7%94%9F%E6%88%90%0A%0A%20%20%20%20%23%23%23%20%E3%81%AA%E3%81%9C%E4%BF%A1%E5%8F%B7%E7%94%9F%E6%88%90%E3%81%8B%E3%82%89%E5%A7%8B%E3%82%81%E3%82%8B%E3%81%AE%E3%81%8B%0A%0A%20%20%20%20%E5%AE%9F%E9%9A%9B%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%AB%E5%85%A5%E3%82%8B%E5%89%8D%E3%81%AB%E3%80%81**%E6%97%A2%E7%9F%A5%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%82%92%E7%94%9F%E6%88%90**%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%EF%BC%9A%0A%20%20%20%20-%20Wandas%E3%81%AE%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C%E3%82%92%E5%AD%A6%E3%81%B6%0A%20%20%20%20-%20%E6%9C%9F%E5%BE%85%E3%81%95%E3%82%8C%E3%82%8B%E7%B5%90%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%A7%E3%81%8D%E3%82%8B%0A%20%20%20%20-%20%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E3%81%8C%E5%AE%B9%E6%98%93%0A%0A%20%20%20%20%E3%81%93%E3%82%8C%E3%81%AF%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE**%E3%80%8CHello%2C%20World!%E3%80%8D**%E3%81%AE%E3%82%88%E3%81%86%E3%81%AA%E3%82%82%E3%81%AE%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(wd)%3A%0A%20%20%20%20%23%20%E3%82%B7%E3%83%B3%E3%83%97%E3%83%AB%E3%81%AA%E6%AD%A3%E5%BC%A6%E6%B3%A2%E3%82%92%E7%94%9F%E6%88%90%20-%20Wandas%E3%81%AE%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E4%BF%A1%E5%8F%B7%E7%94%9F%E6%88%90%E9%96%A2%E6%95%B0%0A%20%20%20%20simple_tone%20%3D%20wd.generate_sin(%0A%20%20%20%20%20%20%20%20freqs%3D%5B440%5D%2C%20%20%23%20440Hz%20(A4%E9%9F%B3)%20-%20%E6%A8%99%E6%BA%96%E7%9A%84%E3%81%AA%E3%82%B3%E3%83%B3%E3%82%B5%E3%83%BC%E3%83%88%E3%83%94%E3%83%83%E3%83%81%0A%20%20%20%20%20%20%20%20duration%3D1.0%2C%20%20%23%201%E7%A7%92%E9%96%93%20-%20%E4%BF%A1%E5%8F%B7%E3%81%AE%E9%95%B7%E3%81%95%0A%20%20%20%20%20%20%20%20sampling_rate%3D44100%2C%20%20%23%20CD%E5%93%81%E8%B3%AA%20-%201%E7%A7%92%E9%96%93%E3%81%AB44100%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%0A%20%20%20%20)%0A%0A%20%20%20%20%23%20%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%81%9F%E4%BF%A1%E5%8F%B7%E3%81%AE%E5%9F%BA%E6%9C%AC%E6%83%85%E5%A0%B1%E3%82%92%E8%A1%A8%E7%A4%BA%0A%20%20%20%20print(%22%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%81%9F%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%83%85%E5%A0%B1%3A%22)%0A%20%20%20%20print(f%22%20%20%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E6%95%B0%3A%20%7Bsimple_tone.n_channels%7D%22)%20%20%23%20%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E6%95%B0%20(%E3%83%A2%E3%83%8E%E3%83%A9%E3%83%AB%3D1%2C%20%E3%82%B9%E3%83%86%E3%83%AC%E3%82%AA%3D2)%0A%20%20%20%20print(f%22%20%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%3A%20%7Bsimple_tone.sampling_rate%7D%20Hz%22)%20%20%23%201%E7%A7%92%E9%96%93%E3%81%AE%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E6%95%B0%0A%20%20%20%20print(f%22%20%20%E9%95%B7%E3%81%95%3A%20%7Bsimple_tone.duration%3A.1f%7D%20%E7%A7%92%22)%20%20%23%20%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%99%82%E9%96%93%E9%95%B7%0A%20%20%20%20print(f%22%20%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E6%95%B0%3A%20%7Bsimple_tone.n_samples%7D%22)%20%20%23%20%E7%B7%8F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E6%95%B0%0A%20%20%20%20print(f%22%20%20%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%3A%20%7Bsimple_tone.labels%7D%22)%20%20%23%20%E5%90%84%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E3%81%AE%E5%90%8D%E5%89%8D%0A%20%20%20%20return%20(simple_tone%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E4%BF%A1%E5%8F%B7%E3%81%AE%E5%8F%AF%E8%A6%96%E5%8C%96%0A%0A%20%20%20%20Wandas%E3%81%AE%E6%9C%80%E3%82%82%E5%BC%B7%E5%8A%9B%E3%81%AA%E6%A9%9F%E8%83%BD%E3%81%AE%E4%B8%80%E3%81%A4%E3%81%8C%E3%80%81**%E4%B8%80%E3%81%A4%E3%81%AE%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%A7%E5%8C%85%E6%8B%AC%E7%9A%84%E3%81%AA%E5%8F%AF%E8%A6%96%E5%8C%96**%E3%81%8C%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(simple_tone)%3A%0A%20%20%20%20%23%20describe()%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%A7%E5%AE%8C%E5%85%A8%E3%81%AA%E5%88%86%E6%9E%90%E3%82%92%E8%A1%A8%E7%A4%BA%20-%20Wandas%E3%81%AE%E5%BC%B7%E5%8A%9B%E3%81%AA%E5%8F%AF%E8%A6%96%E5%8C%96%E6%A9%9F%E8%83%BD%0A%20%20%20%20%23%20is_close%3DFalse%3A%20%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%92%E8%87%AA%E5%8B%95%E3%81%A7%E9%96%89%E3%81%98%E3%81%AA%E3%81%84%E8%A8%AD%E5%AE%9A%E3%80%82%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AA%E6%93%8D%E4%BD%9C%E3%81%8C%E5%8F%AF%E8%83%BD%0A%20%20%20%20simple_tone.describe(is_close%3DFalse)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**%F0%9F%8E%89%20%60describe()%60%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%A7%3A**%0A%20%20%20%20-%20**%E6%99%82%E9%96%93%E9%A0%98%E5%9F%9F**%3A%20%E6%B3%A2%E5%BD%A2%E3%81%AE%E5%BD%A2%E7%8A%B6%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20-%20**%E5%91%A8%E6%B3%A2%E6%95%B0%E9%A0%98%E5%9F%9F**%3A%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%EF%BC%88%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%EF%BC%89%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20-%20**%E6%99%82%E9%96%93%E5%91%A8%E6%B3%A2%E6%95%B0%E9%A0%98%E5%9F%9F**%3A%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%EF%BC%88%E6%99%82%E9%96%93%E5%A4%89%E5%8C%96%EF%BC%89%E3%82%92%E7%A2%BA%E8%AA%8D%0A%0A%20%20%20%20%E3%81%8C%E4%B8%80%E5%BA%A6%E3%81%AB%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%94%84%20%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%81%AE%E4%BD%93%E9%A8%93%0A%0A%20%20%20%20%23%23%23%20Wandas%E3%81%AE%E6%A0%B8%E5%BF%83%E6%A9%9F%E8%83%BD%0A%0A%20%20%20%20Wandas%E3%81%AE%E6%9C%80%E5%A4%A7%E3%81%AE%E7%89%B9%E5%BE%B4%E3%81%AF%E3%80%81**%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3**%E3%81%AB%E3%82%88%E3%82%8B%E7%9B%B4%E6%84%9F%E7%9A%84%E3%81%AA%E5%87%A6%E7%90%86%E3%81%A7%E3%81%99%E3%80%82%0A%0A%20%20%20%20%E3%81%93%E3%82%8C%E3%81%AFpandas%E3%81%AE%E3%82%88%E3%81%86%E3%81%AAAPI%E3%81%A7%E3%80%81%E5%87%A6%E7%90%86%E3%82%92**%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB**%E9%80%A3%E9%8E%96%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(wd)%3A%0A%20%20%20%20%23%20%E3%82%88%E3%82%8A%E8%A4%87%E9%9B%91%E3%81%AA%E4%BF%A1%E5%8F%B7%E3%82%92%E7%94%9F%E6%88%90%0A%20%20%20%20complex_signal%20%3D%20wd.generate_sin(%0A%20%20%20%20%20%20%20%20freqs%3D%5B440%2C%20880%2C%201320%5D%2C%20%20%23%20%E5%9F%BA%E6%9C%AC%E9%9F%B3%20%2B%20%E5%80%8D%E9%9F%B3%20(440Hz%E3%81%AE2%E5%80%8D%E3%81%A83%E5%80%8D)%0A%20%20%20%20%20%20%20%20duration%3D2.0%2C%20%20%23%202%E7%A7%92%E9%96%93%20-%20%E3%82%88%E3%82%8A%E9%95%B7%E3%81%84%E4%BF%A1%E5%8F%B7%0A%20%20%20%20%20%20%20%20sampling_rate%3D8000%2C%20%20%23%208kHz%20-%20%E9%9B%BB%E8%A9%B1%E5%93%81%E8%B3%AA%E3%81%AE%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%0A%20%20%20%20).sum()%0A%0A%20%20%20%20%23%20%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%81%A7%E5%87%A6%E7%90%86%20-%20pandas%E3%83%A9%E3%82%A4%E3%82%AF%E3%81%AA%E7%9B%B4%E6%84%9F%E7%9A%84%E3%81%AA%E5%87%A6%E7%90%86%0A%20%20%20%20processed%20%3D%20(%0A%20%20%20%20%20%20%20%20complex_signal.fade(fade_ms%3D10).low_pass_filter(%20%20%23%20%E3%83%95%E3%82%A7%E3%82%A4%E3%83%89%E3%82%A4%E3%83%B3%E3%83%BB%E3%82%A2%E3%82%A6%E3%83%88%E3%81%AE%E6%99%82%E9%96%93%20(10%E3%83%9F%E3%83%AA%E7%A7%92)%0A%20%20%20%20%20%20%20%20%20%20%20%20cutoff%3D1000%0A%20%20%20%20%20%20%20%20)%20%20%23%201kHz%E3%81%A7%E3%83%AD%E3%83%BC%E3%83%91%E3%82%B9%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%0A%20%20%20%20)%0A%0A%20%20%20%20print(%22%E2%9C%85%20%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%81%AB%E3%82%88%E3%82%8B%E5%87%A6%E7%90%86%E3%81%8C%E5%AE%8C%E4%BA%86%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%EF%BC%81%22)%0A%0A%20%20%20%20%23%20%E5%87%A6%E7%90%86%E5%B1%A5%E6%AD%B4%E3%82%92%E8%A1%A8%E7%A4%BA%20-%20%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AA%E5%87%A6%E7%90%86%E3%81%8C%E9%81%A9%E7%94%A8%E3%81%95%E3%82%8C%E3%81%9F%E3%81%8B%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20processed.print_operation_history()%0A%0A%20%20%20%20%23%20%E5%87%A6%E7%90%86%E5%89%8D%E5%BE%8C%E3%81%AE%E6%AF%94%E8%BC%83%20-%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%82%92%E8%A6%96%E8%A6%9A%E7%9A%84%E3%81%AB%E7%A2%BA%E8%AA%8D%0A%20%20%20%20combined_signal%20%3D%20complex_signal.add_channel(processed%2C%20suffix_on_dup%3D%22_processed%22)%0A%0A%20%20%20%20%23%20TypedDict%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E8%A9%B3%E7%B4%B0%E8%A8%AD%E5%AE%9A%20-%20%E5%9E%8B%E5%AE%89%E5%85%A8%E3%81%AA%E8%A8%AD%E5%AE%9A%E6%96%B9%E6%B3%95%0A%20%20%20%20from%20wandas.visualization.types%20import%20DescribeParams%0A%0A%20%20%20%20config%3A%20DescribeParams%20%3D%20%7B%0A%20%20%20%20%20%20%20%20%22fmin%22%3A%20100%2C%20%20%23%20%E5%91%A8%E6%B3%A2%E6%95%B0%E8%BB%B8%E3%81%AE%E6%9C%80%E5%B0%8F%E5%80%A4%20(100Hz)%0A%20%20%20%20%20%20%20%20%22fmax%22%3A%203000%2C%20%20%23%20%E5%91%A8%E6%B3%A2%E6%95%B0%E8%BB%B8%E3%81%AE%E6%9C%80%E5%A4%A7%E5%80%A4%20(3000Hz)%0A%20%20%20%20%20%20%20%20%22cmap%22%3A%20%22jet%22%2C%20%20%23%20%E3%82%AB%E3%83%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%97%20(jet%3A%20%E8%99%B9%E8%89%B2)%0A%20%20%20%20%20%20%20%20%22vmin%22%3A%20-80%2C%20%20%23%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%AE%E6%9C%80%E5%B0%8F%E5%80%A4%20(dB)%0A%20%20%20%20%20%20%20%20%22vmax%22%3A%20-20%2C%20%20%23%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%AE%E6%9C%80%E5%A4%A7%E5%80%A4%20(dB)%0A%20%20%20%20%20%20%20%20%22waveform%22%3A%20%7B%22ylim%22%3A%20(-3%2C%203)%7D%2C%20%20%23%20%E6%B3%A2%E5%BD%A2%E3%81%AEY%E8%BB%B8%E7%AF%84%E5%9B%B2%0A%20%20%20%20%20%20%20%20%22spectral%22%3A%20%7B%22xlim%22%3A%20(-60%2C%200)%7D%2C%20%20%23%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%81%AEX%E8%BB%B8%E7%AF%84%E5%9B%B2%20(dB)%0A%20%20%20%20%7D%0A%0A%20%20%20%20%23%20%E8%A8%AD%E5%AE%9A%E3%82%92%E9%81%A9%E7%94%A8%E3%81%97%E3%81%A6%E8%A9%B3%E7%B4%B0%E3%81%AA%E5%88%86%E6%9E%90%E3%82%92%E8%A1%A8%E7%A4%BA%0A%20%20%20%20combined_signal.describe(**config)%0A%20%20%20%20return%20(combined_signal%2C)%0A%0A%0A%40app.cell%0Adef%20_(combined_signal)%3A%0A%20%20%20%20combined_signal.fft().plot(overlay%3DTrue)%20%20%23%20%E5%85%83%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%A8%E5%87%A6%E7%90%86%E5%BE%8C%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%82%92%E6%AF%94%E8%BC%83%E8%A1%A8%E7%A4%BA%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%8E%AE%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AA%E5%AE%9F%E9%A8%93%0A%0A%20%20%20%20%23%23%23%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E5%AE%9F%E9%A8%93%0A%0A%20%20%20%20%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE%E9%9D%A2%E7%99%BD%E3%81%95%E3%81%AF%E3%80%81**%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%AA%E3%81%8C%E3%82%89%E7%B5%90%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D**%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%81%99%E3%80%82%0A%0A%20%20%20%20%E4%BB%A5%E4%B8%8B%E3%81%AE%E3%82%BB%E3%83%AB%E3%81%A7%E3%80%81%E3%81%95%E3%81%BE%E3%81%96%E3%81%BE%E3%81%AA%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E8%A9%A6%E3%81%97%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(wd)%3A%0A%20%20%20%20%23%20%E5%AE%9F%E9%A8%93%E7%94%A8%E3%81%AE%E9%96%A2%E6%95%B0%E3%82%92%E5%AE%9A%E7%BE%A9%20-%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%82%92%E8%A9%A6%E3%81%99%E3%81%9F%E3%82%81%E3%81%AE%E9%96%A2%E6%95%B0%0A%20%20%20%20def%20experiment_with_signal(frequency%3D440%2C%20duration%3D1.0%2C%20filter_cutoff%3D500)%3A%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20%20%20%20%20%E5%91%A8%E6%B3%A2%E6%95%B0%E3%80%81%E6%99%82%E9%96%93%E3%80%81%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%81%AE%E3%82%AB%E3%83%83%E3%83%88%E3%82%AA%E3%83%95%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E5%AE%9F%E9%A8%93%E3%80%82%0A%0A%20%20%20%20%20%20%20%20%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%9F%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%81%A7%E6%AD%A3%E5%BC%A6%E6%B3%A2%E4%BF%A1%E5%8F%B7%E3%82%92%E7%94%9F%E6%88%90%E3%81%97%E3%80%81%E3%83%AD%E3%83%BC%E3%83%91%E3%82%B9%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%82%92%E9%81%A9%E7%94%A8%E3%81%97%E3%81%A6%0A%20%20%20%20%20%20%20%20%E5%85%83%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%A8%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E6%B8%88%E3%81%BF%E4%BF%A1%E5%8F%B7%E3%82%92%E6%AF%94%E8%BC%83%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%20%20%20%20Parameters%0A%20%20%20%20%20%20%20%20----------%0A%20%20%20%20%20%20%20%20frequency%20%3A%20float%2C%20default%3D440%0A%20%20%20%20%20%20%20%20%20%20%20%20%E5%9F%BA%E6%9C%AC%E5%91%A8%E6%B3%A2%E6%95%B0%20%5BHz%5D%E3%80%82%E3%81%93%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A8%E3%81%9D%E3%81%AE2%E5%80%8D%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%EF%BC%88%E5%80%8D%E9%9F%B3%EF%BC%89%E3%81%A7%0A%20%20%20%20%20%20%20%20%20%20%20%20%E4%BF%A1%E5%8F%B7%E3%82%92%E7%94%9F%E6%88%90%E3%81%97%E3%81%BE%E3%81%99%E3%80%82A4%E9%9F%B3%EF%BC%88440Hz%EF%BC%89%E3%81%8C%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%20%20%20%20duration%20%3A%20float%2C%20default%3D1.0%0A%20%20%20%20%20%20%20%20%20%20%20%20%E4%BF%A1%E5%8F%B7%E3%81%AE%E9%95%B7%E3%81%95%20%5B%E7%A7%92%5D%E3%80%82%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%82%8B%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%99%82%E9%96%93%E9%95%B7%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%20%20%20%20filter_cutoff%20%3A%20float%2C%20default%3D500%0A%20%20%20%20%20%20%20%20%20%20%20%20%E3%83%AD%E3%83%BC%E3%83%91%E3%82%B9%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%81%AE%E3%82%AB%E3%83%83%E3%83%88%E3%82%AA%E3%83%95%E5%91%A8%E6%B3%A2%E6%95%B0%20%5BHz%5D%E3%80%82%0A%20%20%20%20%20%20%20%20%20%20%20%20%E3%81%93%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E4%BB%A5%E4%B8%8A%E3%81%AE%E6%88%90%E5%88%86%E3%81%8C%E6%B8%9B%E8%A1%B0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%20%20%20%20Returns%0A%20%20%20%20%20%20%20%20-------%0A%20%20%20%20%20%20%20%20ChannelFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20%E5%85%83%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%A8%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E6%B8%88%E3%81%BF%E4%BF%A1%E5%8F%B7%E3%81%8C%E7%B5%90%E5%90%88%E3%81%95%E3%82%8C%E3%81%9FChannelFrame%E3%80%82%0A%20%20%20%20%20%20%20%20%20%20%20%20%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AF%E5%85%83%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%8C%20%22signal%22%E3%80%81%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E6%B8%88%E3%81%BF%E3%81%8C%20%22signal_filtered%22%20%E3%81%A8%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%20%20%20%20Examples%0A%20%20%20%20%20%20%20%20--------%0A%20%20%20%20%20%20%20%20%3E%3E%3E%20%23%20%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%81%A7%E5%AE%9F%E8%A1%8C%0A%20%20%20%20%20%20%20%20%3E%3E%3E%20result%20%3D%20experiment_with_signal()%0A%20%20%20%20%20%20%20%20%3E%3E%3E%20result.fft().plot(overlay%3DTrue)%0A%0A%20%20%20%20%20%20%20%20%3E%3E%3E%20%23%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E5%AE%9F%E9%A8%93%0A%20%20%20%20%20%20%20%20%3E%3E%3E%20result%20%3D%20experiment_with_signal(frequency%3D880%2C%20filter_cutoff%3D1500)%0A%20%20%20%20%20%20%20%20%3E%3E%3E%20result.fft().plot(overlay%3DTrue)%0A%20%20%20%20%20%20%20%20%22%22%22%0A%0A%20%20%20%20%20%20%20%20%23%20%E4%BF%A1%E5%8F%B7%E7%94%9F%E6%88%90%20-%20%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%9F%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E5%9F%BA%E6%9C%AC%E9%9F%B3%E3%81%A8%E5%80%8D%E9%9F%B3%E3%82%92%E4%BD%9C%E6%88%90%0A%20%20%20%20%20%20%20%20signal%20%3D%20wd.generate_sin(%0A%20%20%20%20%20%20%20%20%20%20%20%20freqs%3D%5Bfrequency%2C%20frequency%20*%202%5D%2C%20%20%23%20%E5%9F%BA%E6%9C%AC%E9%9F%B3%20%2B%20%E5%80%8D%E9%9F%B3%0A%20%20%20%20%20%20%20%20%20%20%20%20duration%3Dduration%2C%20%20%23%20%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%9F%E9%95%B7%E3%81%95%0A%20%20%20%20%20%20%20%20%20%20%20%20sampling_rate%3D4000%2C%20%20%23%204kHz%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%20(%E5%AE%9F%E9%A8%93%E7%94%A8)%0A%20%20%20%20%20%20%20%20).sum()%0A%0A%20%20%20%20%20%20%20%20%23%20%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E5%87%A6%E7%90%86%20-%20%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%9F%E3%82%AB%E3%83%83%E3%83%88%E3%82%AA%E3%83%95%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E3%83%AD%E3%83%BC%E3%83%91%E3%82%B9%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E9%81%A9%E7%94%A8%0A%20%20%20%20%20%20%20%20filtered%20%3D%20signal.low_pass_filter(cutoff%3Dfilter_cutoff)%0A%0A%20%20%20%20%20%20%20%20%23%20%E5%87%A6%E7%90%86%E3%81%97%E3%81%9F%E4%BF%A1%E5%8F%B7%E3%82%92%E5%85%83%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%AEchannel%20frame%E3%81%AB%E8%BF%BD%E5%8A%A0%20-%20%E6%AF%94%E8%BC%83%E3%81%AE%E3%81%9F%E3%82%81%0A%20%20%20%20%20%20%20%20combined%20%3D%20signal.add_channel(filtered%2C%20suffix_on_dup%3D%22_filtered%22)%0A%20%20%20%20%20%20%20%20return%20combined%0A%0A%20%20%20%20%23%20%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%81%A7%E5%AE%9F%E8%A1%8C%20-%20%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E5%AE%9F%E9%A8%93%0A%20%20%20%20experiment_with_signal().fft().plot(overlay%3DTrue%2C%20title%3D%22Original%20and%20Filtered%20Signal%20Spectrum%22)%0A%20%20%20%20return%20(experiment_with_signal%2C)%0A%0A%0A%40app.cell%0Adef%20_(experiment_with_signal)%3A%0A%20%20%20%20%23%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E5%AE%9F%E9%A8%93%0A%20%20%20%20%23%20%E4%BE%8B%3A%20%E3%82%88%E3%82%8A%E9%AB%98%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E8%A9%A6%E3%81%99%0A%20%20%20%20experiment_with_signal(frequency%3D880%2C%20filter_cutoff%3D1500).fft().plot(%0A%20%20%20%20%20%20%20%20overlay%3DTrue%2C%20title%3D%22Original%20and%20Filtered%20Signal%20Spectrum%22%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%9B%A0%EF%B8%8F%20%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%0A%0A%20%20%20%20%23%23%23%20%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E5%95%8F%E9%A1%8C%E3%81%A8%E8%A7%A3%E6%B1%BA%E6%B3%95%0A%0A%20%20%20%20%23%23%23%23%201.%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%8C%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%AA%E3%81%84%0A%20%20%20%20%60%60%60python%0A%20%20%20%20%23%20%E8%A7%A3%E6%B1%BA%E6%B3%95%0A%20%20%20%20!pip%20install%20ipympl%20--upgrade%0A%20%20%20%20%23%20JupyterLab%E3%81%AE%E5%A0%B4%E5%90%88%0A%20%20%20%20!jupyter%20labextension%20install%20jupyter-matplotlib%0A%20%20%20%20%60%60%60%0A%0A%20%20%20%20%23%23%23%23%202.%20%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E4%BA%92%E6%8F%9B%E6%80%A7%E3%81%AE%E5%95%8F%E9%A1%8C%0A%20%20%20%20-%20Python%203.9%E4%BB%A5%E4%B8%8A%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%0A%20%20%20%20-%20%E6%9C%80%E6%96%B0%E7%89%88%E3%81%AEWandas%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%0A%0A%20%20%20%20%23%23%23%23%203.%20%E3%83%A1%E3%83%A2%E3%83%AA%E4%B8%8D%E8%B6%B3%0A%20%20%20%20-%20%E6%99%82%E9%96%93%E3%82%92%E7%9F%AD%E3%81%8F%E3%81%99%E3%82%8B%0A%20%20%20%20-%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%E3%82%92%E4%B8%8B%E3%81%92%E3%82%8B%0A%0A%20%20%20%20%23%23%23%23%204.%20%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%8C%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84%0A%20%20%20%20-%20%60%25matplotlib%20widget%60%20%E3%81%8C%E6%AD%A3%E3%81%97%E3%81%8F%E8%A8%AD%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%81%8B%E7%A2%BA%E8%AA%8D%0A%20%20%20%20-%20Jupyter%E3%81%AE%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB%E3%82%92%E5%86%8D%E8%B5%B7%E5%8B%95%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(ipympl)%3A%0A%20%20%20%20%23%20%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%3A%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%8C%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%AA%E3%81%84%E5%A0%B4%E5%90%88%E3%81%AE%E8%A7%A3%E6%B1%BA%E6%B3%95%0A%20%20%20%20%23%20!pip%20install%20ipympl%20--upgrade%20%20%23%20%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%AA%E5%A0%B4%E5%90%88%0A%20%20%20%20print(%22%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%81%AE%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%3A%22)%0A%20%20%20%20%23%20JupyterLab%E3%81%AE%E5%A0%B4%E5%90%88%E3%81%AE%E8%BF%BD%E5%8A%A0%E8%A8%AD%E5%AE%9A%20-%20%E7%92%B0%E5%A2%83%E3%81%AB%E3%82%88%E3%82%8B%E9%81%95%E3%81%84%E3%81%AB%E5%AF%BE%E5%BF%9C%0A%20%20%20%20%23%20!jupyter%20labextension%20install%20jupyter-matplotlib%0A%20%20%20%20print(%221.%20ipympl%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%8C%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%81%8B%E7%A2%BA%E8%AA%8D%22)%0A%20%20%20%20%23%20%E7%8F%BE%E5%9C%A8%E3%81%AE%E8%A8%AD%E5%AE%9A%E7%8A%B6%E6%B3%81%E3%82%92%E8%A1%A8%E7%A4%BA%0A%20%20%20%20print(%222.%20JupyterLab%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%AFlabextension%E3%82%82%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%22)%0A%20%20%20%20print(%223.%20%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB%E3%82%92%E5%86%8D%E8%B5%B7%E5%8B%95%E3%81%97%E3%81%A6%20%25matplotlib%20widget%20%E3%82%92%E5%86%8D%E5%AE%9F%E8%A1%8C%22)%0A%20%20%20%20import%20matplotlib%0A%0A%20%20%20%20print(f%22%E7%8F%BE%E5%9C%A8%E3%81%AE%E3%83%90%E3%83%83%E3%82%AF%E3%82%A8%E3%83%B3%E3%83%89%3A%20%7Bmatplotlib.get_backend()%7D%22)%0A%20%20%20%20if%20ipympl%20is%20not%20None%3A%0A%20%20%20%20%20%20%20%20%23%20%E7%8F%BE%E5%9C%A8%E3%81%AEmatplotlib%E3%83%90%E3%83%83%E3%82%AF%E3%82%A8%E3%83%B3%E3%83%89%E3%82%92%E7%A2%BA%E8%AA%8D%20-%20%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E6%83%85%E5%A0%B1%0A%20%20%20%20%20%20%20%20print(f%22%E2%9C%85%20ipympl%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%3A%20%7Bipympl.__version__%7D%22)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%23%20ipympl%E3%81%8C%E5%88%A9%E7%94%A8%E5%8F%AF%E8%83%BD%E3%81%8B%E7%A2%BA%E8%AA%8D%20-%20%E6%A9%9F%E8%83%BD%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%0A%20%20%20%20%20%20%20%20print(%22%E2%9A%A0%EF%B8%8F%20ipympl%E3%81%8C%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%E2%98%81%EF%B8%8F%20S3%E3%81%8B%E3%82%89WAV%E3%82%92%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%80%0A%0A%20%20%20%20S3%E3%81%8B%E3%82%89%E5%8F%96%E5%BE%97%E3%81%97%E3%81%9F%E3%83%90%E3%82%A4%E3%83%88%E5%88%97%E3%82%92%E3%81%9D%E3%81%AE%E3%81%BE%E3%81%BE%60read_wav()%60%E3%81%AB%E6%B8%A1%E3%81%9B%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E4%BF%9D%E5%AD%98%E3%81%AF%E4%B8%8D%E8%A6%81%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20%23%20%E4%BB%A5%E4%B8%8B%E3%81%AF%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E3%82%B3%E3%83%BC%E3%83%89%E3%81%A7%E3%81%99%3A%20AWS%20S3%20%E4%BA%92%E6%8F%9B%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8%20(MinIO)%20%E3%81%8B%E3%82%89%E3%81%AE%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E4%BE%8B%0A%20%20%20%20%23%20%23%20%E4%BD%BF%E7%94%A8%E3%81%AB%E3%81%AF%E3%83%9C%E3%83%BC%E3%83%86%E3%82%A3%E3%82%AA%20%E3%81%A8%20botocore%20%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%A7%E3%81%99%0A%20%20%20%20%23%20import%20boto3%0A%20%20%20%20%23%20from%20botocore.client%20import%20Config%0A%20%20%20%20%23%20from%20getpass%20import%20getpass%0A%20%20%20%20%23%20from%20wandas%20import%20ChannelFrame%0A%20%20%20%20%23%0A%20%20%20%20%23%20endpoint_url%3D%22http%3A%2F%2F172.17.0.1%3A9000%22%0A%20%20%20%20%23%20access_key%20%3D%20%22minioadmin%22%0A%20%20%20%20%23%20secret_key%20%3D%20%22minioadminpassword%22%0A%20%20%20%20%23%20bucket_name%20%3D%20%22dataset%22%0A%20%20%20%20%23%20object_key%20%3D%20%22Auditory%20Scene%20Analysis%202%20(ASA2)%20Dataset%2FASA%2Fdev%2Fmixed%2F1.wav%22%0A%20%20%20%20%23%20local_path%20%3D%20%22%2Ftmp%2Fminio_download.wav%22%0A%20%20%20%20%23%0A%20%20%20%20%23%20s3%20%3D%20boto3.resource(%0A%20%20%20%20%23%20%20%20%20%20%22s3%22%2C%0A%20%20%20%20%23%20%20%20%20%20endpoint_url%3Dendpoint_url%2C%0A%20%20%20%20%23%20%20%20%20%20aws_access_key_id%3Daccess_key%2C%0A%20%20%20%20%23%20%20%20%20%20aws_secret_access_key%3Dsecret_key%2C%0A%20%20%20%20%23%20%20%20%20%20config%3DConfig(signature_version%3D%22s3v4%22)%2C%0A%20%20%20%20%23%20%20%20%20%20region_name%3D%22us-east-1%22%2C%0A%20%20%20%20%23%20)%0A%20%20%20%20%23%0A%20%20%20%20%23%20%23%20S3%E3%81%8B%E3%82%89WAV%E3%81%AE%E3%83%90%E3%82%A4%E3%83%88%E5%88%97%E3%82%92%E5%8F%96%E5%BE%97%EF%BC%88%E6%AF%8E%E5%9B%9E%E6%96%B0%E3%81%97%E3%81%8F%E5%8F%96%E5%BE%97%E3%81%97%E3%81%A6%E7%A9%BA%E3%83%90%E3%82%A4%E3%83%88%E3%82%92%E9%81%BF%E3%81%91%E3%82%8B%EF%BC%89%0A%20%20%20%20%23%20obj%20%3D%20s3.Object(bucket_name%2C%20object_key).get()%0A%20%20%20%20%23%20wav_bytes%20%3D%20obj%5B%22Body%22%5D.read()%0A%20%20%20%20%23%20if%20not%20wav_bytes%3A%0A%20%20%20%20%23%20%20%20%20%20raise%20ValueError(%22S3%E3%81%8B%E3%82%89%E3%81%AE%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%E7%B5%90%E6%9E%9C%E3%81%8C%E7%A9%BA%E3%81%A7%E3%81%99%E3%80%82%E3%83%90%E3%82%B1%E3%83%83%E3%83%88%E5%90%8D%2F%E3%82%AD%E3%83%BC%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%22)%0A%20%20%20%20%23%0A%20%20%20%20%23%20%23%20bytes%E3%81%9D%E3%81%AE%E3%81%BE%E3%81%BE%E3%81%A7%E3%82%82OK%20%2F%20BytesIO%E3%81%A7%E3%82%82OK%0A%20%20%20%20%23%20ch_bytes%20%3D%20wd.read_wav(wav_bytes)%0A%20%20%20%20%23%20ch_bytes%5B0%5D.describe()%0A%0A%20%20%20%20%23%20Note%3A%20This%20cell%20previously%20demonstrated%20AWS%20S3%20integration%20(boto3)%0A%20%20%20%20%23%20It%20has%20been%20commented%20out%20as%20an%20optional%20sample.%0A%20%20%20%20%23%20Uncomment%20and%20install%20boto3%20if%20you%20need%20to%20test%20S3%20connectivity.%0A%20%20%20%20pass%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%F0%9F%93%9A%20%E6%AC%A1%E3%81%AE%E3%82%B9%E3%83%86%E3%83%83%E3%83%97%0A%0A%20%20%20%20%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%A8%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C%E3%81%8C%E5%AE%8C%E4%BA%86%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%EF%BC%81%0A%0A%20%20%20%20**%E6%AC%A1%E3%81%AE%E3%83%8E%E3%83%BC%E3%83%88%E3%83%96%E3%83%83%E3%82%AF**%3A%20%5B02_working_with_data.ipynb%5D(02_working_with_data.ipynb)%0A%0A%20%20%20%20%E3%81%93%E3%81%93%E3%81%A7%E3%81%AF%E3%80%81%E5%AE%9F%E9%9A%9B%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%EF%BC%88WAV%2C%20CSV%E3%81%AA%E3%81%A9%EF%BC%89%E3%82%92%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%93%E3%81%A7%E3%80%81Wandas%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E7%B4%B9%E4%BB%8B%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20%F0%9F%8E%AF%20%E3%81%93%E3%82%8C%E3%81%BE%E3%81%A7%E3%81%AB%E5%AD%A6%E3%82%93%E3%81%A0%E3%81%93%E3%81%A8%0A%20%20%20%20-%20%E2%9C%85%20Wandas%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%A8%E7%92%B0%E5%A2%83%E8%A8%AD%E5%AE%9A%0A%20%20%20%20-%20%E2%9C%85%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%81%AAJupyter%E7%92%B0%E5%A2%83%E3%81%AE%E6%A7%8B%E7%AF%89%0A%20%20%20%20-%20%E2%9C%85%20%E4%BF%A1%E5%8F%B7%E7%94%9F%E6%88%90%E3%81%A8%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E5%8F%AF%E8%A6%96%E5%8C%96%0A%20%20%20%20-%20%E2%9C%85%20%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%81%AB%E3%82%88%E3%82%8B%E7%9B%B4%E6%84%9F%E7%9A%84%E3%81%AA%E5%87%A6%E7%90%86%0A%20%20%20%20-%20%E2%9C%85%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E5%A4%89%E6%9B%B4%E3%81%AB%E3%82%88%E3%82%8B%E5%AE%9F%E9%A8%93%0A%0A%20%20%20%20%23%23%23%20%F0%9F%9A%80%20%E6%AC%A1%E3%81%AE%E5%AD%A6%E7%BF%92%E7%9B%AE%E6%A8%99%0A%20%20%20%20-%20%E5%AE%9F%E9%9A%9B%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%0A%20%20%20%20-%20ChannelFrame%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0%E3%81%AE%E7%90%86%E8%A7%A3%0A%20%20%20%20-%20%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E6%93%8D%E4%BD%9C%E3%81%A8%E3%82%A4%E3%83%B3%E3%83%87%E3%83%83%E3%82%AF%E3%82%B9%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%0A%20%20%20%20-%20%E3%83%A1%E3%82%BF%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E7%AE%A1%E7%90%86%0A%0A%20%20%20%20---%0A%0A%20%20%20%20**%E6%BA%96%E5%82%99%E3%81%AF%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8B%EF%BC%9F%E6%AC%A1%E3%81%AE%E3%83%8E%E3%83%BC%E3%83%88%E3%83%96%E3%83%83%E3%82%AF%E3%81%B8%E9%80%B2%E3%81%BF%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%EF%BC%81**%20%F0%9F%8E%B5%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
847eeea212864b9adb955b3df3d40ff2