SAS'ı 5 yıldan beri profesyonel olarak kullanıyorum. Dizüstü bilgisayarıma yükledim ve sıklıkla 1000-2.000 değişken ve yüz binlerce gözlem içeren veri kümelerini analiz etmek zorundayım.
Benzer büyüklükteki veri kümeleri üzerinde analiz yapmama izin veren SAS'a alternatifler arıyordum. Diğer insanların bu gibi durumlar için ne kullandığını merak ediyorum. Bu kesinlikle bugün kullanılan şekilde "Büyük Veri" değildir. Veri kümelerim bellekte tutacak kadar küçük de değil. Sabit diskte depolanan verilere algoritmalar uygulayabilecek bir çözüme ihtiyacım var. Bunlar boşuna araştırdım şeyler:
- R - BigMemory, bellekte depolanan matrisler oluşturabilir, ancak elemanların aynı modda olması gerekir. Neredeyse karakter ve sayısal arasında 50/50 bölünmüş verilerle çalışıyorum. FF paketi ihtiyacım olana yaklaşıyor, ancak hangi prosedürlerin onunla uyumlu olduğunu tam olarak anlamıyorum. Bence destek biraz sınırlı.
- Pandalar - R'ye Pythonic bir alternatif konusunda çok heyecanlandım. Ancak, tüm verileri hafızada tutmak zorunda.
- Devrim R - Bu biraz umut vaat ediyor. Ev bilgisayarımda (Kaggle'a kaydolursanız ücretsiz) bir kopyam var ve henüz SAS'a uygun bir alternatif olarak test etmem gerekiyor. SAS alternatifi olarak Revolution R hakkındaki yorumlar çok takdir edilmektedir.
Teşekkürler
GÜNCELLEME 1
İnsanların başarılı bir şekilde kullandıkları gerçek ve pratik çözümler aradığımı eklemek için düzenleme yapıyorum. SAS, bellek kısıtlamaları hakkında biraz endişelenmeden büyük dosyaları dolaşmama izin veriyor. SAS uygulansa da, bellek yönetiminin kullanıcıya nasıl şeffaf hale getirileceğini anladılar. Ancak, işim için SAS kullandığım ağır bir kalple (zorundayım) ve verilerin bir yerde nerede olduğu hakkında çok fazla düşünmek zorunda kalmadan "büyük" veriler üzerinde çalışmamı sağlayan bir FOSS alternatifini SEVİYORUM belirli bir zaman (bellekte veya diskte).
Karşılaştığım en yakın şey, R'nin FF paketi ve Python için Blaze adlı ufukta bir şey . Ve yine de, bu sorunlar yıllardır var, bu yüzden analistler bu arada ne yapıyorlar? Bellek sınırlarıyla aynı sorunları nasıl ele alıyorlar? Sunulan çözümlerin çoğunluğu şöyledir:
- Daha fazla RAM alın - Bu iyi bir çözüm değil, imo. RAM'i aşabilen ancak yine de bir sabit sürücüye sığabilecek bir veri kümesi bulmak kolaydır. Ayrıca, iş akışı, keşifsel veri analizi sırasında oluşturulan tüm yapıları barındırmalıdır.
- Verileri alt kümele - Bu keşif için iyidir, ancak sonuçları kesinleştirmek ve raporlamak için uygun değildir. Sonunda, bir alt kümede geliştirilen süreçler, tüm veri kümesine uygulanmalıdır (benim durumumda, her neyse).
- Verileri toplayın - Bu iş akışını gerçekte uygulayan insanlardan daha fazla şey öğrenmek istiyorum. Nasıl oldu? Hangi araçlarla? Kullanıcı için şeffaf bir şekilde yapılabilir mi? (yani, disk üzerinde bir veri yapısı oluşturun ve çerçeve çalışması, kaputun altındaki yığınlarla ilgilenir).