[スポンサーリンク]

一般的な話題

「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のお客様を中心に、Webアプリ・データサイエンス案件のバックエンド、インフラ、AWSクラウドの技術支援をさせていただいております。

Python, TypeScript, AWS SAA | 個人事業主

関連記事

  1. 陶磁器釉の構造入門-ケイ酸、アルカリ金属に注目-
  2. 超分子化学と機能性材料に関する国際シンポジウム2016
  3. 還元的にアルケンを炭素官能基で修飾する
  4. 分子の聖杯カリックスアレーンが生命へとつながる
  5. ロータリーエバポレーターの回転方向で分子の右巻き、左巻きを制御!…
  6. ダイアモンドの双子:「神話」上の物質を手のひらに
  7. Org. Proc. Res. Devのススメ
  8. 赤絵磁器を彩る絵具:その特性解明と改良

注目情報

ピックアップ記事

  1. ブートキャンプ
  2. ヘキサニトロヘキサアザイソウルチタン / Hexanitrohexaazaisowurtzitane (HNIW)
  3. 高効率・高正確な人工核酸ポリメラーゼの開発
  4. 反応開発における顕著な功績を表彰する「鈴木章賞」が創設 ―北海道大学化学反応創成研究拠点(ICReDD)―
  5. 第147回―「カリックスアレーンを用いる集合体の創製」Tony Coleman教授
  6. 不斉Corey-Chaykovskyエポキシド合成を鍵としたキニーネ・キニジンの選択的合成
  7. タンパク質立体構造をPDBjViewerで表示しよう
  8. 人工プレゼン動画をつくってみた
  9. 金属カルベノイドを用いるシクロプロパン化 Cyclopropanation with Metal Carbenoid
  10. 黒板に描くと着色する「魔法の」チョークを自作してみました

関連商品

ケムステYoutube

ケムステSlack

月別アーカイブ

2023年9月
 123
45678910
11121314151617
18192021222324
252627282930  

注目情報

最新記事

Nature誌が発表!!2025年注目の7つの技術!!

こんにちは,熊葛です.毎年この時期にはNature誌で,その年注目の7つの技術について取り上げられま…

塩野義製薬:COVID-19治療薬”Ensitrelvir”の超特急製造開発秘話

新型コロナウイルス感染症は2023年5月に5類移行となり、昨年はこれまでの生活が…

コバルト触媒による多様な低分子骨格の構築を実現 –医薬品合成などへの応用に期待–

第 642回のスポットライトリサーチは、武蔵野大学薬学部薬化学研究室・講師の 重…

ヘム鉄を配位するシステイン残基を持たないシトクロムP450!?中には21番目のアミノ酸として知られるセレノシステインへと変異されているP450も発見!

こんにちは,熊葛です.今回は,一般的なP450で保存されているヘム鉄を配位するシステイン残基に,異な…

有機化学とタンパク質工学の知恵を駆使して、カリウムイオンが細胞内で赤く煌めくようにする

第 641 回のスポットライトリサーチは、東京大学大学院理学系研究科化学専攻 生…

CO2 の排出はどのように削減できるか?【その1: CO2 の排出源について】

大気中の二酸化炭素を減らす取り組みとして、二酸化炭素回収·貯留 (CCS; Carbon dioxi…

モータータンパク質に匹敵する性能の人工分子モーターをつくる

第640回のスポットライトリサーチは、分子科学研究所・総合研究大学院大学(飯野グループ)原島崇徳さん…

マーフィー試薬 Marfey reagent

概要Marfey試薬(1-フルオロ-2,4-ジニトロフェニル-5-L-アラニンアミド、略称:FD…

UC Berkeley と Baker Hughes が提携して脱炭素材料研究所を設立

ポイント 今回新たに設立される研究所 Baker Hughes Institute for…

メトキシ基で転位をコントロール!Niduterpenoid Bの全合成

ナザロフ環化に続く二度の環拡大というカスケード反応により、多環式複雑天然物niduterpenoid…

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

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

PAGE TOP