7 puan yazan GN⁺ 2024-04-29 | 2 yorum | WhatsApp'ta paylaş

PySheets'e Giriş

  • PySheets, Python için bir elektronik tablo arayüzü sunarak kullanıcıların keşifsel veri bilimi yapmasına, Pandas kullanmasına, matplotlib ile grafikler oluşturmasına, Excel sayfalarını içe aktarmasına, verileri analiz etmesine ve raporlar yazmasına olanak tanır
  • Tüm Python kodu tarayıcıda çalışır ve PySheets'in kendisi de Python ile yazılmıştır
  • PySheets ile kullanıcılar çok fazla kod yazmaya gerek kalmadan geniş veri bilimi ekosisteminden yararlanmak için tüm Python paketlerini ve JS modüllerini yükleyebilir

PySheets'in Başlıca Özellikleri

  • Excel sayfalarını hızlıca içe ve dışa aktarabilir
  • Pandas ile verileri keşfedebilir ve analiz edebilirsiniz
  • Matplotlib kullanarak yapay zeka destekli görselleştirmeleri kolayca gerçekleştirebilirsiniz
  • Minimum kodlama ile anında sonuç alabilirsiniz
  • Paylaşılan sayfalarda ekip üyeleriyle birlikte çalışabilirsiniz
  • Kurulum, kernel veya pahalı bulut maliyetleri gerekmez
  • Tüm Python ve JS ekosisteminden yararlanabilirsiniz

PySheets'in Kullanım Durumu

  • PySheets, 27 Nisan 2024'te herkese açık beta sürümü olarak yayımlandı
  • 21 ve 23 Nisan'da, ilk beta test kullanıcılarından Bruno'nun ürünü keyifle kullandığı görüldü
  • Grafikler PySheets içinde oluşturulur ve "embed" özelliği kullanılarak sunulur

Kullanıcı Geri Bildirimleri

  • "İstemci tarafında çalışan bir elektronik tabloyu gömülü Python ile kullanabilmek harika!" - JG
  • "Python'ın esnekliğini, belirgin elektronik tablo arayüzünü ve görselleştirmeleri seviyorum." - *****@google.com
  • "PySheets, sevdiğim dizi tabanlı kodlamayı mümkün kılıyor!" - FK
  • "Hücreleri ve Python'ı birleştirmek harika!" - FG
  • "PySheets kullanımı kolay ve özelleştirilebilir." - IT
  • "Jupyter Notebook ile elektronik tablonun benzersiz bir birleşimi." - FE
  • "Süreç akış şeması, elektronik tablo ve script'leri tek seferde elde edebiliyorsunuz." - B2
  • "PySheets'in açık kaynaklı LTK kullanması onu ilginç kılıyor." - AL
  • "Tarayıcıdan çıkmadan etkileşim, Excel, her şeyi yapabiliyorsunuz!" - PZ
  • "PySheet, teknik olmayan analistler ile veri bilimciler arasındaki boşluğu kapatıyor." - *****@miracalml.com
  • "PyScript konusunda harika iş. Platformdan en iyi şekilde yararlanıyorsunuz." - *****@anaconda.com
  • "PySheets, önce Python kodlayanlar için Excel'dir." - NA

Fiyatlandırma Politikası

  • Ücretsiz: 5 sayfada sınırsız düzenleme, 100 yapay zeka üretimi, Excel içe/dışa aktarma
  • Pro ($19.99/ay): iş birliği, sınırsız sayfa, topluluk desteği, sınırsız yapay zeka üretimi
  • Enterprise: Single Sign-On, on-premise kurulum, yerel depolama, özel destek, denetim panosu

Ekip Tanıtımı

  • Baş geliştirici Chris Laffra, geliştirme araçları oluşturma konusunda 30 yılı aşkın deneyime sahiptir; IBM, Google ve Uber'de çalışmış, ayrıca Morgan Stanley, Bank of America ve JP Morgan'da yenilikçi finansal ürünler geliştirmek için mühendislik ekiplerine liderlik etmiştir
  • Ürün lideri Kurt Vile, Wall Street kökenli küresel bir teknoloji yöneticisi ve stratejik BT vizyonuna sahip bir isimdir; teknoloji platformları, yazılım mühendisliği, veri, veri bilimi, genel yapay zeka ve finans alanlarında uzmanlığa sahiptir ve elektronik tablolar ile veri analizine dair güçlü bir sezgisel anlayışı vardır
  • Chris ve Kurt, teknik ve finansal uzmanlıklarını mükemmel kullanıcı deneyimine duydukları tutkuyla birleştiriyor

GN+'ın Görüşü

  • PySheets, Python'ı doğrudan tarayıcıda çalıştırması ve veri analizi için tanıdık bir elektronik tablo arayüzü sunması sayesinde veri bilimciler ile geliştirici olmayan kullanıcılar arasındaki boşluğu kapatan ilgi çekici bir ürün gibi görünüyor
  • Mevcut Jupyter Notebook veya Google Colab'a benzer yönleri olsa da, elektronik tablo arayüzü sunmasıyla farklılaşıyor. Ancak ileri düzey analizler için yine de Python kodlama becerisi gerekecek gibi görünüyor
  • Fiyatı biraz yüksek olduğundan bireysel kullanıcı kazanmak kolay olmayabilir; kurumsal müşterilere yönelik Enterprise özelliklerine daha fazla odaklanmak daha doğru olabilir
  • Finans ve muhasebe alanlarında kullanım potansiyelinin yüksek olduğu görülüyor; ayrıca yöneticiler/karar vericiler ile veri analistleri arasında bir iletişim ve iş birliği aracı olarak da değer yaratması beklenebilir
  • Elektronik tabloya makine öğrenimi, görselleştirme gibi özellikler ekleyen ürünler arasında MS'in Excel Ideas'ı veya Google Sheets'in Explore özelliği bulunuyor; bunlara kıyasla PySheets, daha esnek ve güçlü, Python tabanlı bir analiz ortamı sunma avantajına sahip

2 yorum

 
brainer 2024-04-29

Böyle şeyler güzel.

 
GN⁺ 2024-04-29
Hacker News görüşleri
  • PySheets’in yazarıyım. Uygulamanın tamamı Python ile yazıldı; PyScript üzerinde PyScript-LTK kullanıyor ve MicroPython ile PyOdide olmak üzere iki Python VM’i kullanıyor.
    Web sunucusu, DigitalOcean’da gunicorn üzerinde çalışan minimal bir mantıktan ibaret; depolama ise Firestore. Bağımsız bir on-premise uygulama olarak kolayca paketlenebilir, ama şimdilik bunu yüksek öncelik yapmadık. Tarayıcıda Python ile web uygulaması yazma yaklaşımı hakkında görüşlerinizi duymak isterim.

    • Tarayıcı UI’ları oluşturmaya yarayan bir Python kütüphanesi olan LTK, açık kaynak PyScript projesinin bir parçası. Bkz. https://github.com/pyscript/ltk
      PyCon US Pittsburgh’a gelmeyi planlıyorsanız, çoğunlukla Anaconda standında olacağım.
    • Fikir hoşuma gitti. Ticari bir geliştirici değilim; programlamayı esas olarak problem çözme aracı olarak kullanan, tabiri caizse bir bilimsel programcıya daha yakınım.
      Bazen programlama yapmayan iş arkadaşlarımın kullanacağı küçük uygulamalar yapıyorum; onlar da elektronik tabloları epey iyi kullanıyor. Şu anda Python’a oldukça bağlıyım ama uygulama dağıtımı baş ağrısı olduğundan yıllar içinde çeşitli çözümlere baktım; flet ile birkaç web uygulaması da yaptım ve test ettiğim neredeyse tüm platformlarda çalıştı. Bu yaklaşım da iyi görünüyor.
      Ancak güvenlik açısından bunun neden zor olması gerektiğini anlasam da, bir web uygulamasının kullanıcının dosyalarına erişmesini sağlamanın yolunu bilmek isterim.
    • PyScript gerçekten çok ilerlemiş. Eskiden tarayıcıya yüklenmesinin 5–10 saniye sürdüğünü hatırlıyorum; şimdi çok daha hızlı görünüyor.
    • Neden ISO26300 desteği olmadığını merak ediyorum.
  • Bariz bir tanıtım olacak ama daha büyük veri kümeleriyle uğraşıyorsanız rowzero.io’ya da bakabilirsiniz.
    Başta PySheets gibi formül dilinin tamamen Python olduğu bir şeyi uygulamıştık; ancak büyük CSV içe aktarma gibi işlerde Python yorumlayıcısı darboğaz oldu ve GIL nedeniyle değerlendirmeyi paralelleştiremedik. Python ile Excel formül dili arasındaki küçük sözdizimi farkları da iş kullanıcıları için işi daha zorlaştırdı.
    Bu yüzden elektronik tablo motorunu ve formül dilini Rust ile uyguladık. Rastgele Python fonksiyonları yazabileceğiniz bir Python kod penceresi var; bu fonksiyonlar elektronik tablonun herhangi bir hücresinden formül olarak çağrılabiliyor. Pandas dataframe’lerini Python alanı ile elektronik tablo alanı arasında doğal biçimde alıp vermeyi sağlayarak, saf Python’un avantajlarının %90’ını performanstan ödün vermeden elde edebiliyorsunuz.

    • Rowzero daha iyi bir elektronik tablo, PySheets ise daha iyi bir Jupyter Notebook olmaya daha yakın. Bazı yönlerden birbirlerine yaklaşıyorlar, ancak hedef kullanıcıları farklı olduğu için örtüşen tarafları da var, kullanıcı tercihine açık geniş bir alan da.
      PySheets şu anda tarayıcı içinde WebAssembly üzerinde çalışıyor; buradaki kısıtlar Python’ın yavaş olmasından daha büyük. Yorumlayıcı ve kütüphaneler dahil adreslenebilir bellek yalnızca 4 GB ve ağ bant genişliği de istemci tarafı hesaplama için bir kısıt.
      Yine de PySheets, 50.000 satırlık bir Excel sayfasına dayanan bir sayfayı 0,5 saniyede render edebiliyor ve uçtan uca tam yeniden hesaplama yaklaşık 20 saniye sürüyor. Büyük veri kümelerinde Polars çalıştırabilecek harici bir kernel olmadan tarayıcıda yapılabileceklerin sınırı var, ama çoğu durumda PySheets’in sunduğu özelliklerin yeterli olacağını düşünüyorum.
      PySheets’in yazarı olarak bir “rakibin” bizi tehdit olarak görmesi benim için onur verici. Rowzero da oldukça etkileyici ve iyi yapılmış :-)
    • Rowzero harika görünüyor, ama hem Rowzero’nun hem de PySheets’in yanlış kullanıcıları hedeflediğini düşünüyorum. İlk traction’ı almak için veri bilimcilerden çok finans profesyonellerini hedeflemek daha iyi olur bence.
      Bir veri bilimci olarak kullanırım, ama bir finans çalışanı olarak kullanmamak için nedenlerim var. 1) Bulutta çalışıyor; hassas veriler olduğu için yerelde veya on-premise çalışmalı ya da GCP/AWS/Azure ile entegre olmalı. Rust backend ise sorun değil; Python ise Docker ile kütüphane paketleri birlikte dağıtılmalı.
      2) PowerPoint/Word alternatifleri de yapmalı ya da en azından PowerPoint/Word’e kopyala-yapıştır kolay olmalı. 3) Büyük veri ve DB bağlantılarını güçlü biçimde öne çıkarmalı. Şu an darboğaz orada; Bloomberg, Factset, CapitalIQ gibi finans sektöründe popüler servisler için Python API’leri de abonelik varsa hemen kullanılabilecek şekilde sunulsa iyi olur.
      4) Metin tarafını da işlemeli. Benzerlik için embedding’ler, Python’da fuzzy matching, anahtar kelimeleri yeşil vurgulama veya metin içinde arama gibi metin analizi arayüzleri gerekli. Finans sektörü PDF’lerle de sık çalıştığı için, mevcut durumda iki ayrı pencere açmak yerine her şeyin tek bir platformda olması iyi olur.
    • Çalıştırma motorunda DAG’ı Rust ile nasıl uyguladığınızı biraz daha açıklayabilir misiniz merak ediyorum. Elektronik tablo için değil, bir dil için benzer bir şey yapıyorum: https://docs.yoctoproject.org/bitbake/bitbake-user-manual/bi...
      Rust’ta bunu uygulamaya dair iyi örnekler bulamadım. petgraph gibi bir grafik kütüphanesi mi kullanmalı, yoksa kendim mi yazmalıyım merak ediyorum.
    • İki çözüm de farklı nedenlerle ilginç. “Avantajların %90’ı” dediniz; kalan %10’un ne olduğuna, bunun o çözümü kullanmayı engelleyebileceğine dair bir örnek verebilir misiniz merak ediyorum.
    • Row Zero veya PySheets’in açık kaynak olup olmadığını merak ediyorum.
  • Tarayıcı tabanlı olmayan Python tabanlı elektronik tablo uygulaması olarak https://pyspread.gitlab.io/ var.

  • İyi fikir. Geliştirici olmayanlara kullanımı kolay bir GUI sunarken, veri odaklı kullanıcılara aynı anda Pandas sağlaması iyi bir yaklaşım
    Benzer ama kendi kendine barındırılabilen bir proje olup olmadığını merak ediyorum. Sağlıkla ilgili verileri harici bir servise yüklemek rahatsız edici

    • Denediklerim arasında MitoSheet diye iyi bir seçenek var. Yerelde çalışıyor ve iyi özellikleri var, ancak son kontrol ettiğimde TSV dosyalarını desteklemiyordu. Hâlâ aktif olarak geliştiriliyor ve bildiğim kadarıyla YCombinator desteğiyle geliştirildi
      [0] https://www.trymito.io/
    • grist bir ölçüde benzer. Elektronik tablo ile veritabanı arasında bir hibrit; formüllerde Python kullanılabiliyor ve kendi kendine barındırma seçeneği de var
      https://www.getgrist.com/product/self-managed
    • buckaroo[1]'yu Jupyter için daha iyi bir dataframe görüntüleyicisi olarak yaptım; yerleşik özet istatistikler de var. pandas/polars'ı zaten kullananlara daha iyi bir dataframe deneyimi sunmayı amaçlayan bir araç
      Tamamı genişletilebilir[2], bu yüzden istatistikleri ve dönüşümleri iş akışınıza göre özelleştirebilirsiniz
      [1] https://github.com/paddymul/buckaroo
      [2] https://youtu.be/GPl6_9n31NE
    • PySheets sunucusu her yerde çalışabilir. Örneğin kendi dizüstü bilgisayarımda, Google AppEngine'de veya DigitalOcean'da çalıştırılabilir
      Harici servislerle veri paylaşmak istemeyen şirketlere de dağıtılabilmesi için şirket içi kurulum düşünülerek tasarlandı. Ancak PySheets'te saklanan tek şey, sayfanın içinde saklanan veriler. Çoğu kullanım senaryosunda veriler başka bir yerden alınacak, filtrelenip dönüştürülecek ve ardından sonuçlar render edilecek. Yine de kendi kendine barındırma ilginç bir kullanım senaryosu olabilir
    • Bu alandaki kendi projemin dokümantasyonunda ilgili projeler için ayrı bir sayfa oluşturdum. Birisi dokümantasyona kadar geldiyse ve buckaroo sorununu çözmüyorsa, işine yarayacak başka bir şey bulabilmeli diye düşündüm
      https://buckaroo-data.readthedocs.io/en/latest/articles/rela...
  • Video walkthrough veya eğitimlerin çıkma ihtimali var mı merak ediyorum. Sadece açılış sayfasına bakınca iş akışının ne olduğu ve PySheets'in hangi kullanım senaryolarını çözdüğü anlaşılmıyor
    Bunu öğrenmek için hesap açmak istemiyorum

    • Önümüzdeki hafta birkaç video hazırlamayı planlıyorum. Haftalık PyScript FUN toplantısında kapsamlı bir demo yaptım ama kayıt alınmadı
  • RowZero ve PySheets'i yaklaşık 30 dakika denedim. RowZero devasa veri kümelerini destekliyor gibi görünüyor
    Python elektronik tablosu olarak quadratichq kullanıyordum; şimdi RowZero daha fazla özelliğe sahip ve fiyatı da daha düşük görünüyor. PySheets'in açık kaynak olacağını sanmıştım ama kapalı gibi duruyor; fiyatı 2 kat ve 50 satırla sınırlı. Sonuçta https://www.w3resource.com/python-exercises/pandas/excel/Sal... dosyasını PySheets'e nasıl içe aktaracağımı da bulamadım
    visidata'yı bilmiyordum, gerçekten harikaymış. Faydalı bir yazıydı

  • 2000'lerde ve 2010'ların başında Londralı startup Resolver Systems[1], Python ile elektronik tabloları birleştirmeye çalışmıştı
    Sonunda başarılı olmadı, ama bunun Python'ın o dönemde bugünkünden çok daha az tanınmasından kaynaklanıp kaynaklanmadığını merak ediyorum
    [1] http://www.resolversystems.com

    • Evet. Gerçek bir ürün vardı ve yanlış hatırlamıyorsam indirip kullanmıştım
      Daha sonra PythonAnywhere'i kuran kişilerle kısmen aynı kişilerdi sanırım; PythonAnywhere'i de kullanmıştım. Yakın zamanda bir yerde Anaconda tarafından satın alındığını okudum
  • Oldukça havalı görünüyor. Excel, Sheets ve Numbers’ın Python gibi düzgün bir dille kod yazmaya izin vermemesinden, ardından da görselleştirme ve sorgulama yaptırmamasından rahatsız olan biri için çekici
    Ama web sayfasının üçüncü satırında AI-driven ifadesini görüyorum. Bunun, sayfayı hazırlayan kişi için önemli bir özellik olduğunu düşündürüyor
    Ctrl-F ile “ai-driven” aratınca sayfada bir kez daha geçiyor; “Matplotlib ile kolay AI destekli görselleştirme yapın” deniyor. Landing page’de ek açıklama yok, dokümanları da bulamadım. “pysheets docs” diye aratınca aynı ada sahip bir Python kütüphanesi çıktı
    Geçen hafta ilk kez ChatGPT kullanıp özgeçmişimi incelettim. Normalde yapmazdım ama başvurduğum şirket, ChatGPT ile kod ürettiklerini ve gözden geçirdiklerini özellikle vurguluyordu. Şüpheyle yaklaşıp kendim denedim ve sonuç etkileyiciydi
    Ancak ChatGPT, özgeçmişimde hiç var olmayan bir dil bilgisi hatasına işaret etti. Geri bildirimde eleştirdiği cümle özgeçmişin hiçbir yerinde yoktu, benzeri bile yoktu. Elbette ağın 1000 katman derinlerinde hatalı bir şeye benzerlik taşıyordu belki, ama böyle şeyleri etkili biçimde debug edebilmek iyi olurdu
    Bu yüzden bir spreadsheet programında açıklamasız AI-driven görünce verilerin halüsinasyona uğramasından ciddi şekilde endişeleniyorum. Hazırlayan kişinin tam olarak ne kastettiğini açıklaması iyi olur. Grafiklerin %99 doğru olup arada halüsinasyon mu gördüğünü, neler döndüğünü bilmek istiyorum. Bunu bilebilsem hemen şimdi betaya kaydolabilirim
    Son bir şaka olarak, yazarlardan birinin adının Kurt Vile olma olasılığı nedir ki: https://www.youtube.com/watch?v=4uAXMl-Bfiw

    • PySheets’e kaydolunca 7 eğitim sunuluyor. Bunlardan 2’si yapay zeka kullanarak veri getirmeyi, bunları Dataframe’e dönüştürmeyi ve Matplotlib ile görselleştirmeyi anlatıyor
      Üretilen kod etkileyici ve başlangıç seviyesindeki veri bilimcilerin Pandas ve Pyplot API’lerinde gezinmesine yardımcı olabilir. Yapay zeka Python kodu üretmek için kullanılıyor; sheet’teki verileri analiz etmek veya üretmek için kullanılmıyor. Landing page’de bunu netleştireceğim
      Bu başka bir Kurt Vile :-)
  • Çok iyi ve iyi cilalanmış bir proje gibi görünüyor. Spreadsheet içinde Python’dan yararlanmak iyi bir fikir; Excel de zaten bunu yapıyor gibi. Yine de bu kadar net ve kullanımı kolay bir uygulama görmek güzel
    Bu PySheets’in kendisine yönelik bir eleştiri değil ama spreadsheet’lerin daha katı olmasını isterdim. Örneğin sheet’leri tablo biçimine zorlamak gibi. Böylece kurum içinde insanların sonradan spreadsheet dışı araçlarla söküp tersine mühendislik yapmak zorunda kaldığı korkunç karmaşalar yaratmasının önüne geçilebilir

    • Pek çok kullanım senaryosunda veriyi sheet’te saklamak yerine PySheets’i daha iyi bir Jupyter Notebook gibi kullanmayı hayal etmiştim
      Veriyi getirmek, Dataframe’e dönüştürmek, temizlemek, analiz etmek, eğitmek ve dışa aktarmak şeklinde. Örneğin PySheets kullanım metriklerini alıp dataframe’e dönüştüren, grafikleyen ve pysheets.app landing page’inde canlı grafik olarak render eden bir sheet var
  • İlginç bir yazılım/uygulama. Şu anki şirkette Excel formüllerine gömülü çok sayıda iş mantığı barındıran birçok Excel dosyası var
    Excel dosyasını PySheets’e içe aktarınca kaynak Excel dosyasındaki formülleri de tanıyıp tanımadığını merak ediyorum. PySheet’in neler yapabildiğini gösteren bir video olup olmadığını da bilmek isterim

    • Google Sheets’ten PySheets’e sheet’i kes-yapıştır yaparsanız epey iyi çalışıyor. PySheets şu anda Excel fonksiyonlarını işlemiyor
      Olası yol haritasında var ama henüz oraya gelemedik. Şubat ayında önceki işimden ayrıldıktan sonra PySheets üzerinde gerçekten yaklaşık 3 ay kadar çalıştım