2012-10-11 9 views
5

approx'un bir liste döndüreceğinin bir anlamı yok, çünkü - doğru anladım - listenin döndürdüğü iki öğenin sayısal ve eşit uzunlukta olması garanti edilir. Bunu göz önüne alarak, bir dizi veya veri çerçevesi döndürmek daha mantıklı görünmektedir.Niçin veri karesi veya dizisi yerine bir listeyi yaklaşık olarak iade ediyoruz?

Bazı işlevleri approx kullanarak yazıyorum ve bu bana nasıl çalıştığını tam olarak anlamadığım bir şey yapıyor. Bir listenin gerekli olduğu veya daha iyi bir durum var mı?

+1

Stumped… –

+1

Duyguları anlıyorum ama neden gerçek bir pratik fark olduğunu göremiyorum. iki seçenek arasında. – joran

+0

Çoğunlukla, ikisi arasında önemli bir pratik fark yoktur - bazı durumlarda veri çerçevelerinin arazilere takılması daha kolaydır. Benim için daha büyük bir problem, garip görünüyor ki, bu bana 'yaklaşık' doğru anlamadığımı düşünmemi sağlıyor, bu da bana daha sonra sorunlara neden olabilir. –

cevap

5

İşlevler, parodileri argüman olarak alır. Genellikle listeler, ggplot'dan önce baskın yüksek seviye grafik ortamı olan lattice grafiklerine argümanları iletmek için kullanılır ve torunları da geldi. Listeler, birçok işlevdeki argümanları kontrol etmek için parametreleri iletmek için de kullanılır. Bu durumda aynı olması x ve y uzunlukları beklenebilir, bu nedenle bir dataframe olabilir ama orada böyle bir yapıyı talep özel bir nedeni olduğunu ve baz fonksiyonları points ve lines düzgün adlandırılmış listeleri kabul eder ve onları argüman listelerine ayırın.

( bir matris sanmıyorum doğru x ve eşleşen satır ve sütun isimler vardı da rutini çizim baz Y bağımsız değişken dağıtılmıştır alabilir. Matrisler çok vektörler katlanır.)

Bu yüzden cevapların geçtiğinin, fonksiyonel programlamanın nasıl uygulandığıyla tutarlı olduğunu düşünüyorum.

+0

evet, ama ... iki sütunlu matrisler, veri çerçeveleri ve 'x' ve' y' elemanlarını içeren listeler, çoğu temel çizim işleviyle doğru şekilde işlenir, '? Xy.coords'… –

+1

Eh, dataframes _are_ listeleri, ancak ekstra ek yükü olanlar. Bir liste olarak geçmenin bir sebep olmadığını görmüyorum. Eğer 'xy.coords' koduna bakarsanız, bir dataframe'in bir liste gibi aynı kod bölümü tarafından ele alınacağını görürsünüz. –

+0

evet, ancak (kare) x (y) [2: 5,] '(yani dizin tarafından satır) sormak mümkün olabilirdi, bu veri listeleri ile listelerinden çok daha rahatsız edici olurdu. –

İlgili konular