[スポンサーリンク]

一般的な話題

「Python in Excel」が機能リリースされたときのメリットを解説します

[スポンサーリンク]

先日、米Microsoft社が「Python in Excel」のパブリックプレビューを発表しました。

「Introducing Python in Excel: The Best of Both Worlds for Data Analysis and Visualization」https://techcommunity.microsoft.com/t5/microsoft-365-blog/introducing-python-in-excel-the-best-of-both-worlds-for-data/ba-p/3905482(参照日:2023年8月24日)

上記プレビュー記事を拝見する限り、パートナー企業さんからも好評を得ています。

この記事では、「Python in Excelに関するパブリックプレビュー」を拝見した際に、「魅力的だと感じた点」や「機能リリース後に、最大限メリットが得られるためにはどうしたら良さそうか」をまとめたものです。

内容は、Pythonやプログラミングに馴染みのない方にも、なるべく分かりやすくを意識しております。

※ なお、Python in Excelで搭載されている機能とその挙動については、筆者が調査した時点(参照: 2023/8/24)での内容に基づくものであり、今後のアップデート次第では内容の解釈が変わる可能性があること、ご承知おきください。

 

どんな機能が魅力的か?

まずは「Python in Excel」のプレビューにあたり、どのような機能が実装予定なのかを抑えておく必要があります。特に大きな魅力を感じた点を、以下2つ挙げました。

1.テーブルデータの選択から、データをインタラクティブに「DataFame」としても扱える
2.選択したセル内で「Pythonの処理コード」を実行できる

1.テーブルデータの選択から、データをインタラクティブに「DataFrame」としても扱える

そもそもとして、どういうことか。
イメージしやすいように、プレビュー記事には「動画が埋め込み」されておりますので、ざっと把握したい方は直接動画をご覧いただければ幸いです。(0:17~0:29あたり)

動画の該当箇所につき、DataFrameとして取り扱うまでの流れを言語化しますと、

1.Excelの関数を呼び出す要領で `=py` とセルに打ち込む
2.テーブルデータを範囲選択する
3.範囲選択されたテーブルデータが、DataFrameとして取り込まれる

上記のフローにて、DataFrameを扱えるようになっています!

DataFrameというのは、今回の説明の範囲内では「Pythonというプログラミング言語でデータ分析をしやすくするための、データのまとまり」くらいに抑えておけば、差し支えないです。

では、なぜDataFrameとして扱えるようになるとメリットがあるのかというと、ずばり「他のライブラリと連携しやすくなり、データの可視化や統計的分析に繋げやすくなる」からです。

こうした機能の追加により、「Excel上に眠っていたデータを、Excel上で操作しているユーザが主体で、データの可視化や統計的分析まで実行しやすくなる場が整備された」と言えるでしょう。

2.選択したセル内で「Pythonの処理コード」を実行できる

実行までの流れは、動画の1:00 ~ 1:10 で紹介されています。

Pythonの処理コード実行までのフローにおいて、他の実行環境(例. ブラウザ、コードエディタ、アプリ)に遷移することなく、Excelシート上で完結しており、かつPythonの処理コードが「明示的に記述」されていることにGoodボタンを押したくなりました!

ユーザがExcelに記録したデータに対し、機能側が割り込みで追加処理を提供し、「データ分析を行う前処理のイメージ」をつかみやすくするメリットが生まれる、といえるでしょう。

画像「Introducing Python in Excel: The Best of Both Worlds for Data Analysis and Visualization」https://techcommunity.microsoft.com/t5/microsoft-365-blog/introducing-python-in-excel-the-best-of-both-worlds-for-data/ba-p/3905482(参照日:2023年8月24日)より引用。(説明のため、一部文字による強調を入れております)

 

機能実装における「裏の狙い」を推察してみる

ソフトウェアやアプリケーションに限る話ではありませんが、何か新しい機能が実装される背景には「既存の機能のみだと技術的に問題がある」ので、「その問題を解決するために新しい機能が実装」されます。

Excelは30年以上もの歴史があるソフトウェアです。今回のような「大規模な機能実装」の背景には、筆者の予想だと「少なくとも4つの理由」があるのではないかと推察します。

1.Excelファイルに保持されたデータを、統計的分析に回すためのイメージが掴めていないユーザは多いのではないか?

2.Excelファイルを外部のプログラム・ライブラリで取り扱おうとしたときの、前提であるプログラム実行環境の構築でつまづくユーザは多いのではないか?

3.クラウド版Excelで保持されたデータの利活用が事例として少ないのではないか?(あるいは、まだまだ事例の浸透が確認できず、クラウド版Excelのメリットが見いだせていないユーザは多いのではないか?)

4.ネームバリューのあるExcelに、「ユーザからは見えない、割り込みの追加処理を機能として付与」したとしても、直接Pythonの処理コードが実行できるようになると幸せになるユーザは多いのではないか?

Python in Excelのような機能の実装は「ロードマップの序盤にすぎない」でしょうし、今後どのように展開していくのかは、大変興味深いです。

 

おわりに

最後に余談ですが、筆者のまわりから次のような質問を伺いまして、その回答を以下に載せておきます。
(類似の質問内容を複数個伺い、需要がありそうと判断したため、こちらに共有した次第です)

Q. Excelマクロ(VBA)とどう違うのか?

A. 少なくともプレビュー記事・動画を拝見した範囲内ではありますが、以下3点の点で「Python in Excelの機能のほうが優位性がある」と推察します。

1.実行に限り、記述言語の知識がほとんどなくても処理がまわる(≒ Pythonの文法の知識がなくても)

2.ユーザが見ているシート上で実行でき、プログラム・コマンド実行の画面(ターミナル、黒い画面)に遷移する必要がない

3.インタラクティブに処理を実行できている(マウス、キーボードで実行可能)

なお、これら優位性の違いは「記述言語の仕様に関わらず抽出されたもの」なので、「VBAとPythonの、どちらが優れているかを指摘していない」ことを、強調しておきます。

Q. Python in Excelの一般リリース後、機能のメリットを最大限に受け取るためにはどうしたらよいか?

A. Excelファイルにて保持されているデータを、「プログラムが処理しやすくなるように整理しておく」に尽きます。Pythonの処理コード実行は「ユーザからは見えない、割り込みの追加処理で行われる」としても、「Pythonの処理コードにデータとして渡す」ことに変わりはないので、処理側でエラーが発生しないように(思っていたのと違う結果にならないように)整理しておくと良さそうです。

たとえば、次の具体的なルールにもとづき「Excelのシート上に記録したデータ」を整理するとよいでしょう。

1.そのデータは、そもそも「データの可視化」「統計的分析」に渡す必要のあるデータか?(機能のお試しを除いて)

2.そのデータを用いて、何をさせたいかが明確か?(例. 経時変化を追跡したデータであり、データを可視化させたい。ある商品の月ごとの売上データであり、機械学習モデルの検証データとして利用したい、など。)

3.上記1.2.のクリアした上で、列指向型のテーブルデータとしての前処理がなされているか?(例. 列方向にまとめた商品価格のデータ(カラム)は、すべて半角であり、すべて数字であり(空白・記号などがひとつも入っていない)、すべて単位が揃っているかどうか、などを精査する。)

 

関連書籍

[amazonjs asin=”B01NCOIC2P” locale=”JP” title=”みんなのPython 第4版”] [amazonjs asin=”4320124618″ locale=”JP” title=”実用的でないPythonプログラミング: 楽しくコードを書いて賢くなろう!”]
Avatar photo

enifuji

投稿者の記事一覧

製造業、IT、ベンチャー企業との協業による新規プロジェクトの企画・実行
MVPアプリ開発からデータ基盤構築まで、事業価値創出に直結する技術実装
研究開発現場の深い理解に基づく、実用性と先進性を両立したソリューション設計

Agile/Scrum環境でのプロジェクトマネジメント3年~、AWS技術スタック3年~の実践経験
企画段階での立ち上げから商用リリースまで、複数プロジェクトでのリーダー、メンバーの実績

AWS環境における商用Webアプリケーションの開発リード(バックエンド、インフラ)
PoC段階から本格運用まで、事業フェーズに応じた最適な技術選定と実装戦略

関連記事

  1. 文具に凝るといふことを化学者もしてみむとてするなり : ③「ポス…
  2. 【2分クッキング】シキミ酸エスプレッソ
  3. カーボンナノベルトを結晶溶媒で一直線に整列! – 超…
  4. 人工軟骨への応用を目指した「ダブルネットワークゲル」
  5. “腕に覚えあり”の若手諸君、「大津会議」…
  6. 多置換ケトンエノラートを立体選択的につくる
  7. 第17回ケムステVシンポ『未来を拓く多彩な色素材料』を開催します…
  8. 結晶構造に基づいた酵素機能の解明ーロバスタチン生合成に関わる還元…

注目情報

ピックアップ記事

  1. 第77回―「エネルギーと生物学に役立つ無機ナノ材料の創成」Catherine Murphy教授
  2. シグマアルドリッチ器具・消耗品大特価キャンペーン【2018年3月30日まで】
  3. クロスカップリングはどうやって進行しているのか?
  4. マイヤー・シュスター転位/ループ転位 Meyer-Schuster/Rupe Rearrangement
  5. ミツバチに付くダニに効く化学物質の研究開発のはなし
  6. 4-ヨードフェノキシ酢酸:4-Iodophenoxyaceticacid
  7. とある難病の薬 ~アザシチジンとその仲間~
  8. 秋の褒章2011-化学
  9. 第二回ケムステVプレミアレクチャー「重水素標識法の進歩と未来」を開催します!
  10. マイケル・オキーフィ Michael O’Keeffe

関連商品

ケムステYoutube

ケムステSlack

月別アーカイブ

2023年9月
 123
45678910
11121314151617
18192021222324
252627282930  

注目情報

最新記事

条件の「前後」も実験条件である【プロセス化学者のつぶやき】

前回まで1. 設定温度と系内の実温度のお話2. 温度値をどう判断するか3. 反応操作をし…

そのpH、“本当にその場所”の値ですか?ニードル式pHセンサーを使ってみた!

突然ですが、「培養の再現性がなんか悪い」「同じ条件のはずなのに結果がズレる」といった経験はあ…

「骨格編集」×「ナノカーボン合成」〜ナノカーボン合成の新戦略を実証〜

第719回のスポットライトリサーチは、名古屋大学大学院工学研究科(忍久保研究室)博士後期課程2年の平…

【書評】立体化学 はじめの一歩

立体化学は,分子の三次元構造を理解するための重要な分野であり,有機化学や…

水のシミュレーション入門 — 水分子を計算機の中でどう”描く”か —

身近なのに、計算機にとって手強い"水"。本記事では、点電荷モデルから機械学習まで、その"描き方"の進…

◆◇◆◇ 第36回フォーラム・イン・ドージン開催のご案内 ◆◇◆◇

同仁化学研究所が熊本から世界へ情報発信するフォーラム・イン・ドージンの開催ご案内です。今年は『な…

『力』による円偏光発光のon/off制御を単一分子レベルで実現

第718回のスポットライトリサーチは、東京科学大学 物質理工学院(相良研究室)博士後期課程2年の野中…

数日かかっていた反応機構解析を、わずか数分に!

機械学習ポテンシャルが変える計算化学の現在近年、DFT計算による反応機構解析は広く行われるよ…

海外ポスドクのオファーをもらう【アメリカで Ph.D. を取る: 進路編】

ポスドクとして海外に留学する場合、希望する研究室の教授に直接連絡を取り、面接などを通して適性を判断さ…

MDで観るトライボロジー 〜原子が擦れるその場をシミュレーション〜

軽くて強いのに摩耗に弱いチタン合金は、航空機や人工関節に広く使われています。原子が擦れ合うその場を分…

実験器具・用品を試してみたシリーズ

スポットライトリサーチムービー

PAGE TOP