Python'da yuvarlama işlevi

Yayınlanan: 2023-01-03

İçindekiler

Python'a Giriş:

Python, üst düzey bir programlama dilidir. Açık kaynaklı bir dildir, yani herkes tarafından erişilebilir. Şirketler genelinde küresel kullanımı nedeniyle günümüzde çok popüler hale gelen, yaygın olarak kullanılan bir dildir. Şirketler, verileri doğru ve derin bir şekilde anlama kapasitesine sahip olduğu için Python kullanmayı tercih ediyor. Python, veri kümesinin depolanması ve işlenmesi için birçok güçlü yola sahiptir. Bu dilde, bir değişken bildirmeye veya bir değişkene herhangi bir tür atamaya gerek yoktur, çünkü bir değişken yazdığınızda otomatik olarak atanacaktır; bu, atanan farklı değerler arasında otomatik olarak ayrım yapan dinamik, yazılı bir dil olduğu anlamına gelir. Noktalı sayılar "kayan" tip, nokta içermeyen sayılar ise "integer" tip olarak ele alınacaktır. Bu tür bir dilin kullanılması birçok fayda sağlar, bunlardan biri, tür dönüştürmeleri ile uğraşmanıza gerek olmamasıdır. Python'un diğer programlama dillerine göre birçok avantajı vardır:

  • İngiliz diline benzer basit bir sözdizimine sahiptir.
  • Ayrıca, bu dilde birkaç satır sözdizimi ile yapılabilecek büyük kodlar yazmak yerine, geliştiriciler için çok yararlı olan kodun birkaç satırının yazılmasına da olanak tanır.
  • Python, nesne yönelimli bir dildir.
  • Girinti bu dilde çok önemlidir. Girinti, kodun okunabilirliğine yardımcı olur ve kod bloğunun nasıl yürütüleceğini anlamaya yardımcı olur. Tüm kod blokları bir girintiye ihtiyaç duyar. Diğer programlama dilleri gibi kaşlı ayraçlara ve endif ifadelerine gerek yoktur.

Kendinizi geliştirmek için veri bilimi kurslarımıza göz atın.

Python ile neler yapılabilir?

  • Python'un birçok uygulaması vardır. Bunlardan bazıları web geliştirme, yazılım geliştirme ve sistem komut dosyası oluşturmadır.
  • Python, web uygulamalarının oluşturulmasında kullanışlıdır.
  • Python, iş akışları oluşturmak için kullanılabilir. Veritabanı sistemine bağlanabilme özelliğine sahiptir ve daha sonra sistemdeki dosyaları okuyabilir ve bu dosyalar üzerinde değişiklik yapabilir.
  • Python, gerektiğinde çeşitli karmaşık matematik işlemlerini gerçekleştirebildiği için büyük verilerle uğraşmamız gerektiğinde çok kullanışlıdır.
  • Python, mühendislerin bir konsepti işleyen bir öğeye dönüştürmesine yardımcı olur.

Python Yerleşik İşlevleri:

Büyük Veri terimine ve günümüz dünyasında hayati bir rol oynayan veri bilimine aşinayız. Birçok kuruluş, geçmişte kullanılmayan verilerden yapılan analizlere veya tahminlere dayalı olarak iyi kararlar almak üzere verilerini etkilemek için büyük veriler üzerinde çalışıyor. Python, şirketler tarafından kalıpları bulmak ve buna dayalı olarak iyi kararlar almak için veriler üzerinde çeşitli işlevleri yerine getirmek için kullanılıyor. Veri kümesi önyargılı olabilir ve bir analist, herhangi bir maliyetli hatadan kaçınmak için verilerle uğraşırken bunu akılda tutmalıdır. Bu nedenle, model oluşturmada herhangi bir bozulmaya yol açabilecek verilerde herhangi bir hatayı önlemek için çeşitli teknikler kullanıyoruz. Bunun için çok sayıda işlev kullanıyoruz ve bunlardan birkaçı Python yerleşik işlevlerdir.

Python, hesaplama amaçları için bazı çok kullanışlı yerleşik işlevlere sahiptir. Tamsayı bölme, mutlak değer, karmaşık sayılar ve modül gibi çeşitli işlevler vardır. Böyle bir işlev, kayan nokta sayılarıyla uğraşırken çok kullanışlı olan round() işlevidir. Python'da yuvarlama, matematikte aritmetik işlemleri gerçekleştirirken gördüğümüzden farklıdır. Bu, normal matematiksel hesaplamaları yaparken 10 sayısını temel alan ondalık sistemi kullanmamıza, buna karşılık bilgisayarların her tamsayıyı ikili sayı biçiminde, yani “0” biçiminde işlemesine ve saklamasına bağlanabilir. " ve 1". Bu nedenle, Python'da yuvarlak işlevini kullanırken beklediğimiz sonuçları göremeyebiliriz. Bu nedenle, Python'daki yuvarlak işlevinin, kullanıldığı belirli bir durum için beklenen sonucu vermeyebilecek belirli bir yuvarlama stratejisine göre çıktı verdiğini anlamalıyız. Yuvarlama işlevinin temel işlevi, bir kayan sayı döndürmektir.

Yuvarlamanın Etkisi Ne Kadardır?

Son derece iyi bir gün geçirdiğinizi ve yerde 100 dolar bulduğunuzu varsayalım. Tüm paranızı tek seferde harcamak yerine, birden fazla hisse senedi satın almak için bir miktar yatırım yapmayı düşünürsünüz.

Ayrıca hisse senetlerinin değerinin tamamen arz ve talebe bağlı olduğunu da biliyorsunuz. Belirli bir hisse senedini ne kadar çok insan almaya çalışırsa, o hisse senedinin değeri o kadar kademeli olarak artar. Hisse senetlerinin değeri ise piyasadaki talebe göre her saniye değişebilmektedir.

Şimdi bir deney zamanı. Satın alınan tüm hisse senetlerimizin değerini çözelim ve ardından dalgalanmalarını her saniye rastgele bir sayı ile, 0,05 $ ile 0,06 $ arasında bir yere kaydedelim. Bahsedilen varyasyon, iki ondalık basamaklı çok güzel bir değer olmayabilir. Toplam değerin bir saniyede 0,036332 USD arttığı ve sonraki saniyede 0,022223 USD düştüğü bir örneği ele alalım.

Şimdi, beşinci ve altıncı ondalık haneyi takip etmemiz gerekmiyorsa, üçüncü ondalık haneden sonraki basamağı kesme kararı alabiliriz. Bu yöntem, rakamın kesilmesi olarak bilinir. Burada bir hata beklenebilir, ancak yalnızca üç ondalık basamak korunarak, bu hata en az öneme sahip olabilir. Bu senaryoyu biraz daha öğrenmek için truncate() fonksiyonunun nasıl çalıştığına bakalım.

Diyelim ki, örneğin elimizde bir n sayısı var. Böylece truncate() n sayısını 1000 ile çarparak virgülü üç basamak sağa kaydırarak bu sayı üzerinde çalışacaktır. Çarpma işleminden sonra int() olarak alınan yeni bir sayı elde ederiz. Son olarak sayıyı tekrar 1000'e bölüp virgülü sola kaydırıyoruz.

Şimdi, varsayım için birincil parametreleri tanımlayalım. Şimdi iki değişkene ihtiyacımız olacak, bunlardan biri simülasyon bittiğinde stoklarımızın gerçek değerini izlemek için, diğeri ise her adımda üç ondalık basamağa kırptıktan sonra stoklarımızın değerini izlemek için.

Aşağıdaki sözdiziminin yardımıyla değişkenleri 100 olarak başlatacağız:

Ve Şimdi simülasyon 1.000.000 saniye (yaklaşık 11,5 gün) boyunca çalıştırılır. Simülasyon bir döngü içinde gerçekleşecektir. 999 ile 0 arasındaki sayı aralığında döngü yapacaktır. Range()'den alınan değerin her adımında değer değişkene kaydedilecektir. Döngünün her adımında random.randn() kullanılarak -0.5 ile 0.5 arasında bir rasgele sayı üretilecek ve bu sayı randn değişkenine atanacaktır. Şimdi randn'a gerçek değer eklenerek yatırımın değeri hesaplanacak ve ardından kesilen değere randn ekleyeceğiz. Kesilen toplamı alacağız ve bu toplam değer daha sonra truncate() kullanılarak kesilecek.

Döngüyü çalıştırdıktan sonra gerçek_değer değişkenini gözlemliyoruz; sadece yaklaşık 3,55 dolar kaybediyoruz. Ancak, kesik_değere bakarsak, miktarın tamamı kaybolmuş gibi görünüyor.

Not: Yukarıda belirtilen örnekte kullanılan random.seed() işlevi, sözde_rastgele sayının tohumlanmasında yer alır. Böylece çıktı yeniden üretilebilir.

Round() ve truncate() kullandıktan sonra sonuçlardaki farkı net bir şekilde gözlemleyebiliyoruz.

Yuvarlama işlevini nasıl kullandığımız oldukça önemlidir ve bir yazılım geliştiricisi olarak, ortak sorunların ne olduğu ve bunlarla nasıl başa çıkılacağı konusunda bu anlayışa sahip olmamız gerekir. Öyleyse, bir değeri yuvarlamak için farklı yöntemleri ve Python'da nasıl uygulanabileceğini inceleyelim.

SIFIRDAN YARIMA YUVARLAK:

round_half_up() ve round_half_down() 'a daha yakından baktığımızda, ikisinin de sıfır civarında simetrik olmadığını fark ederiz. Simetri, bir bağı sıfırdan uzağa yuvarlayarak tanıtılabilir.

Ondalık noktayı sağa kaydırarak başlıyoruz. Daha sonra bu yeni sayıdaki ondalık basamağın hemen sağındaki d rakamına bir göz atalım. Bu senaryo için dört durum vardır:

  1. n pozitif ve d >= 5 ise , değeri yuvarlayın
  2. n pozitif ve d < 5 ise , değeri aşağı yuvarlayın
  3. n negatif ve d >= 5 ise , değeri aşağı yuvarlayın
  4. n negatif ve d < 5 ise , değeri yuvarlayın

Yukarıdaki yönteme göre yuvarladıktan sonra ondalık basamağı tekrar sola kaydırıyoruz.

YAARI EŞE YUVARLAK:

Bir veri kümesindeki değerler yuvarlanırken en yakın çift sayıya yuvarlandığında yuvarlama yanlılığından kaçınmanın bir yolu. Aşağıda birkaç örnek görelim:

round() işlevi önyargısızdır, ancak mükemmel değildir. Ancak, veri kümesindeki değerlerin çoğu aşağı yuvarlamak yerine çifte yuvarlarsa, yine de yuvarlama yanlılığı ortaya çıkabilir. "Yarıdan çifte yuvarlama stratejisi", Python yerleşik işlevinde round() kullanılır.

Veri Biliminde Yönetici PG Programına Başvurun

ÖZET:

  • Şimdi, Python'da çeşitli yuvarlama yöntemlerinden geçtik. Gerçek dünya verilerini tamamlamak için en iyi uygulamalar vardır.
  • Yuvarlamayı numpy ve pandas veri çerçevelerinde kullanabiliriz.
  • Yuvarlama hataları olabilir, ancak bunun için değerleri yuvarlamak ve bu hatalardan kaçınmak için çeşitli yollarımız var.
Bu makaleyi paylaşmak istermisiniz?

Geleceğin Kariyerine Hazırlanın

Veri Biliminde Bilim Ustası Başvurusu