Python के लिए spreadsheet UI, PySheets
(pysheets.app)PySheets का परिचय
- PySheets, Python के लिए spreadsheet UI प्रदान करता है, जिससे उपयोगकर्ता exploratory data science कर सकते हैं, Pandas का उपयोग कर सकते हैं, matplotlib से charts बना सकते हैं, Excel sheets import कर सकते हैं, data का analysis कर सकते हैं, और reports लिख सकते हैं
- सारा Python code browser में चलता है और PySheets स्वयं भी Python में लिखा गया है
- PySheets की मदद से उपयोगकर्ता बहुत अधिक code लिखे बिना विशाल data science ecosystem का लाभ उठाने के लिए सभी Python packages और JS modules load कर सकते हैं
PySheets की मुख्य विशेषताएँ
- Excel sheets को तेज़ी से import और export किया जा सकता है
- Pandas के साथ data को explore और analyze किया जा सकता है
- Matplotlib का उपयोग करके AI-आधारित visualization आसानी से किया जा सकता है
- न्यूनतम coding के साथ तुरंत परिणाम पाए जा सकते हैं
- टीम के सदस्यों के साथ shared sheets पर collaboration किया जा सकता है
- setup, kernel, या महंगे cloud cost की ज़रूरत नहीं है
- पूरे Python और JS ecosystem का उपयोग किया जा सकता है
PySheets का उपयोग हाल
- PySheets को 27 अप्रैल 2024 को public beta version के रूप में लॉन्च किया गया
- 21 और 23 अप्रैल को शुरुआती beta tester Bruno के मज़े से उपयोग करने की बात सामने आई
- charts PySheets में बनाए जाते हैं और "embed" फ़ीचर का उपयोग करके उपलब्ध कराए जाते हैं
उपयोगकर्ता प्रतिक्रिया
- "बिल्ट-इन Python के साथ client-side spreadsheet का उपयोग कर पाना शानदार है!" - JG
- "मुझे Python की flexibility, साफ़ spreadsheet interface और visualization पसंद हैं।" - *****@google.com
- "PySheets मुझे array-based coding करने देता है, जो मुझे पसंद है!" - FK
- "cells और Python को जोड़ना कमाल है!" - FG
- "PySheets उपयोग में आसान है और इसे customize किया जा सकता है।" - IT
- "Jupyter notebook और spreadsheet का एक अनोखा मेल।" - FE
- "आपको process flowcharts, spreadsheets और scripts एक साथ मिलते हैं।" - B2
- "PySheets दिलचस्प है क्योंकि यह open source LTK का उपयोग करता है।" - AL
- "browser छोड़े बिना interaction, Excel, सब कुछ किया जा सकता है!" - PZ
- "PySheets non-technical analysts और data scientists के बीच की दूरी कम करता है।" - *****@miracalml.com
- "PyScript पर शानदार काम। आप platform का पूरा फायदा उठा रहे हैं।" - *****@anaconda.com
- "PySheets उन लोगों के लिए Excel है जो Python-first coding करते हैं।" - NA
मूल्य नीति
- मुफ़्त: 5 sheets का unlimited editing, 100 AI generations, Excel import/export
- Pro ($19.99/माह): collaboration, unlimited sheets, community support, unlimited AI generations
- Enterprise: Single Sign-On, on-premise installation, local storage, dedicated support, audit dashboard
टीम परिचय
- प्रमुख डेवलपर Chris Laffra के पास development tools बनाने का 30+ वर्षों का अनुभव है, और उन्होंने IBM, Google, Uber में काम किया है। साथ ही Morgan Stanley, Bank of America, JP Morgan में innovative financial products बनाने के लिए engineering teams का नेतृत्व किया है
- product leader Kurt Vile, Wall Street पृष्ठभूमि वाले global tech executive हैं जिनके पास strategic IT vision है। उन्हें technology platforms, software engineering, data, data science, general AI और finance में विशेषज्ञता है, और spreadsheets व data analysis की स्वाभाविक समझ है
- Chris और Kurt तकनीकी व वित्तीय विशेषज्ञता को बेहतरीन user experience के प्रति जुनून के साथ जोड़ते हैं
GN+ की राय
- PySheets एक दिलचस्प उत्पाद लगता है, जो browser में सीधे Python चलाकर और data analysis के लिए एक परिचित spreadsheet interface देकर data scientists और non-developers के बीच की दूरी कम करता है
- इसमें मौजूदा Jupyter Notebook या Google Colab जैसी कुछ समानताएँ हैं, लेकिन spreadsheet UI देने के कारण यह अलग दिखता है। हालांकि advanced analysis के लिए अब भी Python coding skill की ज़रूरत पड़ सकती है
- इसकी कीमत कुछ अधिक लगती है, इसलिए individual users को आकर्षित करना आसान नहीं होगा, और enterprise customers के लिए features पर अधिक फोकस करना बेहतर हो सकता है
- finance और accounting क्षेत्रों में इसके उपयोग की संभावना बड़ी दिखती है, और executives/decision-makers तथा data analysts के बीच communication व collaboration tool के रूप में भी इसका मूल्य अपेक्षित है
- spreadsheet में machine learning, visualization जैसी सुविधाएँ जोड़ने वाले उत्पादों में MS का Excel Ideas और Google Sheets का Explore feature शामिल हैं, लेकिन इनके मुकाबले PySheets अधिक flexible और शक्तिशाली Python-आधारित analysis environment देने का लाभ रखता है
2 टिप्पणियां
यह तो अच्छा है।
Hacker News की राय
मैं PySheets का लेखक हूँ। ऐप पूरी तरह Python में लिखा गया है, PyScript के ऊपर PyScript-LTK का इस्तेमाल करता है, और दो Python VM — MicroPython और PyOdide — का उपयोग करता है।
वेब सर्वर DigitalOcean पर gunicorn में चलने वाला बहुत कम logic है, और storage Firestore है। इसे standalone on-premises ऐप के रूप में आसानी से package किया जा सकता है, लेकिन अभी इसे उच्च प्राथमिकता नहीं दी है। ब्राउज़र में Python से web apps लिखने के तरीके पर राय सुनना चाहूँगा।
अगर आप PyCon US Pittsburgh आने की योजना बना रहे हैं, तो मैं ज़्यादातर Anaconda booth पर रहूँगा।
कभी-कभी मैं ऐसे छोटे apps बनाता हूँ जिन्हें programming न करने वाले सहकर्मी इस्तेमाल करते हैं, और वे spreadsheets काफ़ी अच्छी तरह इस्तेमाल कर लेते हैं। अभी मैं Python से काफ़ी बंधा हुआ हूँ, लेकिन app deployment सिरदर्द है, इसलिए कई solutions देखे हैं; flet से कुछ web apps भी बनाए, जो test किए गए लगभग हर platform पर चले। यह approach भी अच्छी लगती है।
हालांकि मैं समझता हूँ कि security के कारण यह कठिन क्यों होना चाहिए, लेकिन जानना चाहता हूँ कि web app को user की files तक access देने का तरीका क्या है।
साफ़-साफ़ प्रचार है, लेकिन अगर आप बड़े datasets संभालते हैं तो rowzero.io भी देख सकते हैं।
शुरुआत में हमने PySheets की तरह formula language को पूरी तरह Python बनाने की चीज़ implement की थी, लेकिन बड़े CSV import जैसे कामों में Python interpreter bottleneck बन गया, और GIL की वजह से evaluation को parallelize नहीं कर सके। Python और Excel formula language के छोटे syntax differences भी business users के लिए इसे और मुश्किल बनाते थे।
इसलिए हमने spreadsheet engine और formula language Rust में implement किए। इसमें एक Python code window है जहाँ arbitrary Python functions लिखे जा सकते हैं, और वे functions spreadsheet cells में कहीं से भी formula के रूप में call किए जा सकते हैं। Pandas dataframes को Python area और spreadsheet area के बीच स्वाभाविक रूप से पास कराया जा सकता है, जिससे pure Python के 90% फायदे बिना performance sacrifice के मिलते हैं।
PySheets अभी browser के अंदर WebAssembly पर चलता है, और यहाँ की constraints Python के धीमा होने से बड़ी हैं। interpreter और libraries सहित addressable memory सिर्फ़ 4GB है, और network bandwidth भी client-side computation की constraint है।
फिर भी PySheets 50,000-row Excel sheet पर आधारित sheet को 0.5 सेकंड में render कर सकता है, और पूरा end-to-end recalculation लगभग 20 सेकंड लेता है। बड़े datasets पर Polars चलाने वाले external kernel के बिना browser में क्या किया जा सकता है, उसकी सीमाएँ हैं, लेकिन लगता है ज़्यादातर लोगों के लिए PySheets की दी हुई functionality काफी होगी।
PySheets के लेखक के तौर पर यह सम्मान की बात है कि कोई “competitor” हमें threat मानता है। Rowzero भी काफी impressive और अच्छी तरह बनाया गया है :-)
data scientist के तौर पर मैं इसे इस्तेमाल करूँगा, लेकिन finance person के तौर पर न इस्तेमाल करने की वजहें हैं। 1) यह cloud पर चलता है, जबकि sensitive data होता है, इसलिए इसे local या on-premises चलना चाहिए, या GCP/AWS/Azure से integrate होना चाहिए। Rust backend हो तो ठीक है, और Python हो तो Docker के ज़रिए libraries का bundle साथ deploy करना होगा।
2) PowerPoint/Word alternatives भी बनाने होंगे, या कम-से-कम PowerPoint/Word में copy-paste आसान होना चाहिए। 3) big data और DB connections को ज़ोर से push करना चाहिए। अभी bottleneck वहीं है, और Bloomberg, Factset, CapitalIQ जैसी finance में popular services के लिए Python APIs भी subscription होने पर तुरंत इस्तेमाल करने लायक उपलब्ध कराना अच्छा होगा।
4) text side भी handle करना होगा। similarity के लिए embeddings, Python की fuzzy matching, keywords को green highlight करना या body search जैसे text analysis interfaces चाहिए। finance में PDF भी अक्सर इस्तेमाल होते हैं, इसलिए अभी की तरह दो windows खोलने के बजाय सब कुछ एक platform में हो तो अच्छा होगा।
Rust में ऐसी चीज़ implement करने के अच्छे examples नहीं मिले। सोच रहा हूँ कि petgraph जैसी graph library इस्तेमाल करनी चाहिए या खुद बनाना चाहिए।
ब्राउज़र-आधारित नहीं, बल्कि Python-based spreadsheet app के रूप में https://pyspread.gitlab.io/ मौजूद है।
अच्छा आइडिया है। non-developers को इस्तेमाल में आसान GUI देता है, और data-oriented users को साथ में Pandas भी देता है
सोच रहा हूँ कि क्या इससे मिलते-जुलते, लेकिन self-host किए जा सकने वाले प्रोजेक्ट मौजूद हैं। health-related data को किसी बाहरी service पर अपलोड करना असहज लगता है
[0] https://www.trymito.io/
https://www.getgrist.com/product/self-managed
सब कुछ extensible है[2], इसलिए workflow के हिसाब से statistics और transformations customize किए जा सकते हैं
[1] https://github.com/paddymul/buckaroo
[2] https://youtu.be/GPl6_9n31NE
इसे on-premises को ध्यान में रखकर design किया गया है, ताकि उन companies में भी deploy किया जा सके जो external services के साथ data share नहीं करना चाहतीं। हालांकि PySheets में केवल वही data store होता है जो sheet में ही stored है। ज़्यादातर use cases में data कहीं और से load किया जाएगा, फिर filter/transform करके results render किए जाएंगे। फिर भी self-hosting एक दिलचस्प use case हो सकता है
https://buckaroo-data.readthedocs.io/en/latest/articles/rela...
जानना चाहता हूँ कि video walkthrough या tutorial आने की संभावना है या नहीं। landing page देखकर यह समझना मुश्किल है कि workflow क्या है और PySheets कौन-से use cases solve करता है
यह पता लगाने के लिए account register नहीं करना चाहता
RowZero और PySheets को लगभग 30 मिनट तक इस्तेमाल करके देखा। RowZero शायद बहुत बड़े datasets support करता है
Python spreadsheet के तौर पर quadratichq इस्तेमाल करता रहा हूँ, लेकिन अब RowZero में features ज़्यादा और कीमत भी कम लगती है। मुझे लगा था PySheets open source होगा, लेकिन यह बंद लगता है, कीमत 2x है और 50 rows तक limited है। आखिर में https://www.w3resource.com/python-exercises/pandas/excel/Sal... को PySheets में import करने का तरीका भी समझ नहीं पाया
visidata के बारे में नहीं जानता था, लेकिन यह वाकई शानदार है। उपयोगी article था
2000s और 2010s की शुरुआत में London startup Resolver Systems[1] ने Python और spreadsheets को combine करने की कोशिश की थी
आखिरकार वह सफल नहीं हुआ, लेकिन सोचता हूँ क्या इसकी वजह यह थी कि उस समय Python की पहचान आज की तुलना में काफी कम थी
[1] http://www.resolversystems.com
बाद में PythonAnywhere शुरू करने वाले लोगों में से कुछ शायद वही लोग थे, और मैंने PythonAnywhere भी इस्तेमाल किया था। हाल ही में कहीं पढ़ा कि Anaconda ने उसे acquire कर लिया है
काफ़ी शानदार दिखता है। जिन लोगों को इस बात से झुंझलाहट होती है कि Excel, Sheets, Numbers उन्हें Python जैसी अच्छी भाषा में code करने और फिर उसके बाद visualization/query करने नहीं देते, उनके लिए यह आकर्षक है
लेकिन webpage की तीसरी line में AI-driven दिखता है। इससे लगता है कि page के author के लिए यह एक अहम feature है
Ctrl-F से “ai-driven” खोजने पर page में यह एक बार और आता है, जहाँ लिखा है, “Matplotlib के साथ आसान AI-powered visualization करें।” landing page पर कोई अतिरिक्त explanation नहीं है और मुझे docs भी नहीं मिले। “pysheets docs” search किया तो इसी नाम की एक Python library मिली
पिछले हफ़्ते मैंने पहली बार ChatGPT का इस्तेमाल अपना resume review कराने के लिए किया। आम तौर पर मैं ऐसा नहीं करता, लेकिन जिस company में apply किया था, वह इस बात पर बहुत ज़ोर दे रही थी कि वे ChatGPT से code generate और review करते हैं। संदेह के साथ खुद इस्तेमाल किया और result प्रभावशाली था
हालांकि ChatGPT ने resume में ऐसे syntax errors बताए जो मौजूद ही नहीं थे। feedback में जिस sentence की आलोचना की गई थी, वह resume में कहीं भी नहीं था, और उससे मिलता-जुलता भी कुछ नहीं था। बेशक network की 1000 layers की गहराई में किसी ऐसी चीज़ से similarity रही होगी जिसमें error था, लेकिन अच्छा होगा अगर ऐसी चीज़ों को effectively debug किया जा सके
इसलिए spreadsheet program में बिना explanation वाला AI-driven देखकर मुझे बहुत चिंता होती है कि कहीं data hallucinate न हो जाए। अच्छा होगा अगर author साफ़ बताए कि उनका मतलब ठीक-ठीक क्या है। मैं जानना चाहता हूँ कि chart 99% सही होता है लेकिन कभी-कभी hallucinate करता है, या असल में क्या हो रहा है। अगर यह पता चल जाए तो मैं अभी beta में sign up भी कर सकता हूँ
आख़िरी मज़ाक के तौर पर, authors में से एक का नाम Kurt Vile है—इसकी संभावना कितनी होगी: https://www.youtube.com/watch?v=4uAXMl-Bfiw
generated code प्रभावशाली है, और beginner data scientist को Pandas और Pyplot API explore करने में मदद कर सकता है। AI का इस्तेमाल Python code generate करने के लिए होता है, sheet के data को analyze या generate करने के लिए नहीं। landing page पर इस बात को स्पष्ट करूँगा
यह वाले अलग Kurt Vile हैं :-)
यह बहुत बढ़िया और अच्छी तरह polished project जैसा दिखता है। spreadsheet में Python का उपयोग करना अच्छा idea है, और लगता है Excel भी पहले से ऐसा कर रहा है। फिर भी इतनी साफ़ और easy-to-use implementation देखना अच्छा है
यह PySheets की आलोचना नहीं है, लेकिन मेरी इच्छा है कि spreadsheets और strict हों। उदाहरण के लिए sheet को table format में force करना। ताकि organization में लोग बाद में ऐसा भयानक chaos न बना दें जिसे non-spreadsheet tools से खोलकर reverse-engineer करना पड़े
यानी data लाना, Dataframe में बदलना, साफ़ करना, analyze करना, train करना और export करना। उदाहरण के लिए एक sheet है जो PySheets usage metrics load करती है, उन्हें dataframe में बदलती है और graph बनाती है, फिर pysheets.app landing page पर live chart के रूप में render करती है
दिलचस्प software/app है। हमारी current company में बहुत-सी Excel files हैं जिनमें Excel formulas के रूप में काफ़ी business logic भरा हुआ है
अगर Excel file को PySheets में import करें तो क्या यह original Excel file के formulas को भी recognize करता है, यह जानना चाहता हूँ। यह भी जानना चाहूँगा कि PySheet क्या कर सकता है, यह दिखाने वाला कोई video है या नहीं
यह possible roadmap में है, लेकिन अभी हम वहाँ तक नहीं पहुँचे हैं। फरवरी में पिछली job छोड़ने के बाद PySheets पर असल में सिर्फ़ लगभग 3 महीने ही काम किया है