Python - CSV 入力を使用して Jupyter Notebook を共有する方法

okwaves2024-01-25  8

生成された CSV から会社のヒート マップを作成しています。たくさん読んだ後、gmaps API を使用して jupyter ノートブック (オンライン) を使用して構築しました。私はこれまでこのようなことをしたことがありませんでしたが、jupyter/python/gmaps を使用することで私の要件に簡単に対応できました (ズーム、データ表示ポイントの上にマウスを置くと、データのクリーニングが簡単になります)。

今、自分が構築したものを (プログラマ以外の人々と) 共有する必要がある段階に達しました。現時点では、ユーザーがボタンを押すと CSV が生成されます。次に、その CSV を取得して jupyter ノートブック フォルダーに手動で配置します。コードはパンダ経由でそれを読み取り、ヒートマップを生成します。 github、nbviewer、Colaboratory などを指しているリソースをたくさん見てきましたが、ユーザー入力を許可するものは見つからないようです。理想的にはユーザーボタンをクリックすると、ヒートマップが表示されます (オンラインかどうかに関係なく)。セキュリティにも問題があるため、このプロジェクトを公開することはできません。

jupyter ノートブック (gmap を含む) を入力を許可する実行可能ファイルにする方法はありますか?それとも CSV アップロードを自動化してプロジェクトを安全に共有する別の方法ですか?これを完全に間違った角度から見ているので、テクノロジーを変更する必要があるのでしょうか?

この度は誠にありがとうございます。私はこの種のプロジェクトは初めてですが、助けていただければ幸いです :)

詳細情報: ウィンドウズ10、 一般環境: Visual Studio 2019 C#、 現在のプロジェクト: Python 3

「このプロジェクトを公開する」とはどういう意味ですか?どこからでもアクセスできるように、Web サイトでホストしたいですか?それともスクリプトファイルを共有すればうまくいきますか?再現可能な最小限の例を投稿するようにしてください。

– アビシェーク・アグニホトリ

2020 年 9 月 3 日 19:50

社外の人がアクセスできるようにしたくありません。特定の URL を持っている人であれば誰でもアクセスできます。スクリプト ファイルは潜在的にそれがどのようなものになるかはわかりませんが、スクリプトはオンラインの jupyter ノートブックにログインしますか?それとも、誰もが Python をインストールする必要があるでしょうか?再現可能な最小限の例は、各人が CSV を生成するボタンをクリックすることができ、ヒートマップも生成することです。これがどのように機能するかについてはオープンです。

– カミリオン

2020 年 9 月 3 日 20:10

1

google-colab が役に立つと思います。これにより、Jupyter ノートブック環境が提供されます。雲。ノートブックをチームメイトと共有することもできます。試してみてください!!

– アビシェーク・アグニホトリ

2020 年 9 月 3 日 20:15

@ABHISHEKAGNIHOTRI 喜んで承ります!ローカル CSV を自動的にアップロードしてノートブックで実行する方法はありますか?また、会社の全員が既に Microsoft アカウントを持っているため、私は Azure ノートブックについてさらに真剣に検討しています。

– カミリオン

2020 年 9 月 3 日 21:42



------------------------

私は、Jupyter Notebook について間違った考え方をしており、このテクノロジーは研究/データ サイエンスに適していると判断しました。ユーザーがボタンをクリックしたときに起動し、データが自動アップロードされる Web サイトを作成することにしました。テクノロジーを Google マップ JavaScript API に変更しました。これで、必要なことはすべて実行できるようです。データを CSV から JSON に変更しましたが、それ以外の点では、これが私にとって正しい答えだと思います。



------------------------

Jupyter Notebook をインタラクティブな Web アプリに変換するために使用できる Mercury と呼ばれるフレームワークがあります。

使用例あなたが説明した問題は非常に簡単に解決できます。

YAML 構成を使用して生のセルを追加します。
---
title: Upload file demo
description: Show how to upload a file in notebook with Mercury
show-code: False
params:
    filename:
        input: file
        maxFileSize: 1MB
        label: Please upload CSV file
---
上記の YAML はファイル アップロード ウィジェットを生成します。 アップロードされたファイルは、新しいアップロードされたファイルへのパスを保存する変数ファイル名によってノートブック内でアクセスできます。

ノートブックの例:

Mercury で生成されたアプリケーション:

免責事項: 私は Mercury の作者です。

総合生活情報サイト - OKWAVES
総合生活情報サイト - OKWAVES
生活総合情報サイトokwaves(オールアバウト)。その道のプロ(専門家)が、日常生活をより豊かに快適にするノウハウから業界の最新動向、読み物コラムまで、多彩なコンテンツを発信。