Microsoft akan menghadirkan Python ke Excel
(theverge.com)- Microsoft mulai menyediakan pratinjau publik untuk fitur terintegrasi yang memungkinkan analisis dan visualisasi data berbasis Python di dalam Excel
- Tanpa instalasi terpisah, pengguna dapat mengakses Python dari ribbon Excel dan menyempurnakan hasilnya bersama rumus, bagan, dan PivotTable yang sudah ada
- Fungsi PY baru menampilkan data Python di grid spreadsheet, dan melalui kerja sama dengan Anaconda, pandas, statsmodels, Matplotlib, dan lainnya dapat digunakan di Excel
- Komputasi dijalankan bukan secara lokal melainkan di Microsoft Cloud, lalu hasilnya dikembalikan ke worksheet, dan visualisasi berbasis Matplotlib serta Seaborn juga dapat dibuat
- Pratinjau publik dimulai dari Windows di Beta Channel untuk Microsoft 365 Insiders, dan setelah pratinjau berakhir, beberapa fitur akan dibatasi tanpa lisensi berbayar
Analisis Python yang masuk ke dalam Excel
- Microsoft menambahkan fitur integrasi Python ke Excel, sehingga data dapat dimanipulasi dan dianalisis langsung di dalam spreadsheet
- Pengguna dapat mengakses Python langsung dari ribbon Excel, sehingga bisa melanjutkan pekerjaan analisis tingkat lanjut tanpa meninggalkan lingkungan Excel yang sudah familier
- Plot yang dibuat dengan Python dan hasil dari library dapat digabungkan dengan rumus, bagan, dan PivotTable di Excel untuk disempurnakan lebih lanjut
Pendekatan bawaan tanpa instalasi terpisah
- Integrasi Python disediakan sebagai bagian dari konektor bawaan Excel dan Power Query
- Dapat diakses tanpa memasang perangkat lunak tambahan atau mengatur add-in terpisah
- Fungsi PY baru menampilkan data Python di dalam grid spreadsheet Excel
Library Anaconda dan visualisasi
- Microsoft bekerja sama dengan Anaconda, repositori Python untuk enterprise, agar library Python utama dapat digunakan di Excel
- Library yang tersedia mencakup:
- pandas
- statsmodels
- Matplotlib
- Pengguna Excel dapat membuat rumus, PivotTable, dan bagan berdasarkan data Python
- Dengan library bagan seperti Matplotlib dan Seaborn, visualisasi berikut dapat dibuat:
- heatmap
- violin plot
- swarm plot
Komputasi diproses di Microsoft Cloud
- Kode Python ditulis dan digunakan di dalam spreadsheet Excel, tetapi pemrosesan komputasinya dilakukan di Microsoft Cloud, bukan oleh Excel lokal
- Hasil eksekusi kemudian dikembalikan ke worksheet Excel
Cakupan ketersediaan dan syarat lisensi
- Pratinjau publik Python in Excel tersedia di Beta Channel untuk Microsoft 365 Insiders
- Ketersediaan awal dibatasi untuk Windows
- Microsoft berencana memperluasnya ke platform lain di kemudian hari
- Selama masa pratinjau, fitur ini termasuk dalam langganan Microsoft 365
- Setelah masa pratinjau berakhir, beberapa fitur akan dibatasi jika tidak memiliki lisensi berbayar
1 komentar
Pendapat Hacker News
Sebagai orang yang dulu bekerja sebagai pengembang Excel dan pernah gagal mencoba memasukkan Python ke Excel, kabar hari ini terasa seperti kejutan yang menyenangkan
Sekitar 7 tahun lalu saya sempat punya kesempatan meninggalkan tim Excel, tetapi atasan dari atasan saya saat itu tahu bahwa saya ingin memasukkan Python ke Excel, lalu mengatakan bahwa jika saya tetap tinggal, ia akan menugaskan pekerjaan itu kepada saya. Pekerjaan yang saya kira akan berlangsung 6 bulan berubah menjadi proyek sekitar 3 tahun, dan pada akhirnya dirilis dalam bentuk memasukkan fungsi kustom JavaScript ke Excel, sementara sisi Python makin memudar
Python juga dijalankan “di cloud” berbasis AzureML v1, tetapi ada diskusi bolak-balik soal apakah akan dijalankan secara lokal. Ada reorganisasi, peluncuran ulang, perekrutan ulang di tim mitra AzureML, juga PM yang keluar, dan ketika tim mitra lain menyadari bahwa kode kami bisa dipakai untuk menjalankan JavaScript di proses eksternal, kami akhirnya menghabiskan lebih banyak waktu untuk merilis fitur itu ketimbang Python
Pekerjaan intinya adalah mengubah mesin kalkulasi Excel agar fungsi bisa melakukan perhitungan asinkron, sehingga pengguna bisa terus mengerjakan bagian lain dari spreadsheet sementara endpoint jarak jauh menghitung, entah itu JavaScript, Python, atau apa pun. Dulu, spreadsheet terkunci saat perhitungan berlangsung, dan itu tidak bagus untuk perhitungan yang lama serta tidak jelas kapan selesai. Saya penasaran apakah sebagian dari yang kami buat masuk ke fitur kali ini
“Recalc or die”
Masalah Office.js adalah pengguna Excel rata-rata terlalu sulit untuk memulai karena tumpukan dependensi npm, dan bahkan pengembang profesional pun cukup kerepotan. Saya puas karena kami membuat pengguna tidak perlu memakai Node.js: https://docs.xlwings.org/en/latest/pro/server/officejs_custo...
Sekarang proyeknya sudah ditinggalkan: https://alphawolfxl.com/
Beberapa orang yang saya minta melakukan beta test mengatakan “perusahaan tidak akan mau membayar”, jadi saya merasa telah membuang-buang waktu dan menghentikannya; melihat ini sekarang rasanya campur aduk
Secara umum, kurang ada kode yang benar-benar berjalan untuk melihat bagaimana JavaScript bekerja di Excel, dan saat ini rasanya nyaris seperti level “cara menggambar burung hantu”
Saya berharap ini juga mendukung eksekusi Python lokal, bukan hanya melalui Microsoft Cloud, tetapi tetap saja fitur ini saja tampaknya bisa sangat memodernisasi Excel
Ini juga bisa menghilangkan kebutuhan akan situs web untuk menampilkan data semacam ini. Di pekerjaan lama, saya pernah membuat situs web analitik yang hanya dipakai beberapa orang internal; kalau fitur seperti ini sudah ada waktu itu, sepertinya ini sudah cukup untuk menggantikannya
Saya terus menjelaskan bahwa cukup buat data mart dengan SQL Server dan isi dengan data yang dibutuhkan untuk analitik menggunakan alat ETL. Tidak perlu memberi akses ke data mentah. Namun semua orang tetap menatap saya aneh, lalu malah ingin menjalankan proyek adopsi Tableau bernilai jutaan dolar. Pengguna tidak menginginkan itu, benar-benar absurd
Atau bisa juga dikirim lewat UI feedback di Excel web/desktop. Para PM membaca semua feedback itu
Kami bisa menjamin pengalaman yang konsisten untuk semua pengguna. Membayangkan setiap orang harus memelihara distribusi Python lokal masing-masing dan menjamin kompatibilitasnya dengan Excel saat versi makin bercabang dari waktu ke waktu itu mengerikan
Saat workbook Excel dibagikan kepada pengguna lain, perhitungannya bisa langsung berjalan. Jika bergantung pada instalasi Python lokal yang berbeda-beda, itu tidak akan terjadi dan pengguna akan sangat frustrasi
Keamanan juga besar. Bayangkan membuka file Excel yang bisa menjalankan kode Python dengan hak akses pengguna lokal
Saya juga sepenuhnya setuju dengan poin kedua. Membuat aplikasi internal dengan Python yang terintegrasi dengan infrastruktur IT yang ada itu, paling tidak, tetap merepotkan. Excel hampir di mana-mana sudah menjadi bagian dari infrastruktur IT, dan merupakan kanvas reaktif yang dapat diprogram
Pengungkapan: saya bekerja di tim desain fitur ini
Di sini, macro dipandang sebagai jalur untuk menjalankan malware di mesin klien, dan manfaatnya dianggap tidak cukup besar untuk menanggung risiko itu
Di sini jelas terlihat tanda bahaya. Kekuatan mendasar Excel berasal dari fakta bahwa workbook bisa berdiri sendiri, tetapi sekarang prosesnya akan selamanya terikat ke cloud
Saat harus membuka workbook milik rekan yang sudah meninggal tiga tahun kemudian, itu akan bergantung pada apakah vendor masih terus mendukung fitur integrasi ini
Akan mengerikan kalau langkah pertama untuk pekerjaan apa pun adalah “mencari cara membuat perangkat lunaknya berjalan lagi”. Selama beberapa dekade terakhir, saya sudah beberapa kali mengalaminya karena berbagai add-in di Excel, Outlook, dan Word, dan add-in itu bahkan tidak memproses datanya secara jarak jauh
Karena itu, penting untuk sesekali benar-benar memulihkan backup, atau dalam kasus seperti ini, memvalidasi file penting
Saya sempat antusias dengan “Python di Excel”, lalu langsung mendingin saat melihat frasa “berjalan di cloud”. Ini tampaknya tidak punya alasan selain mengikat pengguna ke layanan cloud. Rasanya terlalu mirip dengan dalih melindungi saya dari tinta printer yang tidak aman
Biasanya saya menyukai produk MS Office dan cenderung berprasangka baik. Kalau ada alasan bagus yang masuk akal, selain lock-in, untuk mewajibkan Python berjalan di cloud, saya ingin tahu
Menurut saya, saat yang tepat untuk keluar dari M$ sudah lewat sekitar lima tahun lalu. Dari Windows sampai Office, semua produknya sudah berisi fitur anti-konsumen
Tentu, saya juga paham bahwa pengguna mahir Excel+Python kemungkinan besar sudah terbiasa membawa dan memelihara runtime Python mereka sendiri
Ada juga orang yang memakai Excel di perangkat iOS dan Android. Dengan cara ini, mereka juga bisa menggunakan dan membaca Python di dalam spreadsheet
Pada 2005, saya bersama teman-teman mendirikan perusahaan bernama Resolver Systems dan membuat Resolver One, spreadsheet yang bisa menjalankan Python
Sayangnya produk itu tidak berhasil di pasar, lalu kami mengubah arah dan membuat PythonAnywhere, lingkungan coding dan hosting online. Yang ini cukup sukses dan tahun lalu diakuisisi Anaconda. Jadi sekarang lingkarannya seperti tertutup
Untuk memperjelas, tim yang membuat fitur ini di dalam Anaconda sepenuhnya terpisah dari tim PythonAnywhere. Kalau orangnya sama, itu akan menjadi cerita bergaya Hollywood yang pas sekali
Namun masalahnya, Resolver berbasis IronPython, sehingga cukup banyak library yang tidak berjalan dengan baik
Saya sangat suka bisa melakukan perubahan kecil langsung dari webapp PythonAnywhere, dan ketika mulai memakai GCP/AWS, saya sering merindukan fitur semacam itu
Saat melihat kalimat “komputasi Python dijalankan di Microsoft Cloud”, rekan saya bercanda, “Bahkan Microsoft pun sepertinya tidak bisa mengelola instalasi Python lokal di Windows…”
Namun menarik juga membayangkan Microsoft benar-benar akhirnya memecahkan masalah pengaturan lingkungan Python lokal, dan Excel menjadi package manager Python standar di seluruh sistem operasi
$ excelpip install fastapi==9.11.23mencari fastapi version 11.09.2023…Saya kira mereka akan menyelami ruang masalah ini secara mendalam dan menciptakan ulang package manager yang melampaui apa yang muncul dari dunia open source
Sebagai gantinya, sekarang kita punya Windows Update, Windows Features, Microsoft Store, Software Center, dan winget. winget adalah package manager untuk Windows buatan Microsoft, yaitu alat yang harus dipasang lewat package manager Windows buatan Microsoft lainnya
$GOV_AGENCYyang memakai Excel versi satu generasi di belakang akan berkolaborasi dengan dunia?LibreOffice seharusnya sudah lama membaca situasi. Pada prinsipnya scripting Python memang mungkin, tetapi terlalu merepotkan dan berantakan, dan sepertinya tidak ada roadmap perbaikan
Peringatan yang sama juga berlaku untuk desktop Linux dan aplikasi-aplikasinya secara umum. Semakin banyak platform proprietary akan menambahkan perluasan fitur “AI” tingkat lanjut ke aplikasi lama berbasis cloud, sering kali lewat API Python
Sayang sekali berbagai arus di dunia open source terlalu tersilo. Potensi yang lebih besar daripada sekadar jumlah bagian-bagiannya sedang terbuang
Keluhan terbesar saya terhadap spreadsheet LibreOffice dan Apple Numbers adalah cara menangani copy/paste area pilihan yang tidak berurutan
Misalnya, dari data 5 baris 3 kolom, jika memilih dan menyalin baris
1 2 3,7 8 9,a b c, lalu menempelkannya di bawahd e f, Excel hanya menyambungkan baris yang dipilih. LibreOffice dan Numbers mempertahankan juga baris kosong di antaranyaSaya tidak menemukan pengaturan untuk mengubah perilaku ini. Excel mungkin juga menyebalkan bagi orang yang justru ingin mempertahankan jarak, tetapi saya hampir tidak pernah menginginkan itu, jadi LibreOffice dan Numbers terasa tidak nyaman
Alasan orang tidak terlalu memedulikannya adalah karena use case paling populer untuk suite perkantoran adalah interoperabilitas dengan format file Microsoft
Untuk menjalankan script di dalam LibreOffice, APSO script organiser direkomendasikan: https://extensions.libreoffice.org/en/extensions/show/apso-a...
Ketika kelompok pengguna lanjut usia yang belum pernah memakai bahasa pemrograman menua dan pensiun, orang yang belajar menggabungkan Python dengan Excel pada akhirnya akan lebih menyukai Python. Karena lebih fleksibel dan bisa diperluas
Selain untuk papan hitung dasar, tidak ada alasan memakai Excel. Kalau seseorang meminta spreadsheet, saya mengotomatiskan pembuatannya dengan Python agar tidak perlu lagi menanganinya secara langsung
Mengecewakan
“Python di Excel saat ini tersedia bagi pengguna yang menjalankan Beta Channel di Windows. Fitur ini pertama kali diluncurkan ke Excel untuk Windows mulai build 16.0.16818.2000, lalu akan tersedia di platform lain.” [1]
“Python di Excel dapat digunakan di Excel untuk Windows. Fitur ini tidak tersedia di Excel untuk Mac, Excel untuk web, Excel untuk iPad, Excel untuk iPhone, maupun Excel untuk Android. Di platform yang tidak didukung, workbook yang berisi Python dapat dilihat, tetapi jika sel Python dihitung ulang, akan muncul error.” [2]
[1] https://techcommunity.microsoft.com/t5/excel-blog/announcing...
[2] https://support.microsoft.com/en-us/office/introduction-to-p...
“Perhitungan Python berjalan di Microsoft Cloud”? Tidak, terima kasih
Tunggu dulu. LibreOffice sudah punya Python sejak beberapa tahun lalu, tetapi tidak ada yang peduli, dan malah mengeluh bahwa untuk “pekerjaan sungguhan” dibutuhkan VBA yang 100% kompatibel. Orang-orang itu sekarang di mana?
Jika VBA LibreOffice kompatibel dengan Office VBA, tidak akan ada alasan untuk terus menyimpan sistem Windows usang di suatu tempat
Alasan kami melakukan ini adalah untuk menghasilkan uang, dan tidak ada orang yang ingin membeli spreadsheet Excel yang tidak berjalan di Excel
Saya bekerja dengan LibreOffice Calc di Linux, dan karena Excel sama sekali tidak mendukung Linux, saya berharap ada kompatibilitas yang cukup baik sehingga bisa dikirim ke pelanggan tanpa masalah, tetapi saat ini masih jauh dari itu
Jika orang tidak tahu keberadaannya, mereka tidak akan memakainya
Jika orang sudah terbiasa dengan sesuatu yang lain, mereka akan meminta yang itu