Python 中的圓形函數

已發表: 2023-01-03

目錄

Python簡介:

Python 是一種高級編程語言。 它是一種開源語言,這意味著任何人都可以訪問它。 它是一種廣泛使用的語言,由於其在整個公司的全球使用,如今變得非常流行。 公司更喜歡使用 Python,因為它能夠準確而深入地理解數據。 Python 有許多強大的方法來存儲和操作數據集。 在這種語言中,不需要聲明變量或為變量分配任何類型,因為一旦您鍵入變量,它就會自動分配,這意味著它是一種動態的類型化語言,可以自動區分分配的不同值。 帶點的數字將被視為“float”類型,沒有任何點的數字將被視為“integer”類型。 使用這種語言有很多好處,其中之一就是您無需為類型轉換操心。 與其他編程語言相比,Python 有很多優點:

  • 它具有類似於英語的簡單語法。
  • 它還允許編寫幾行代碼,這對開發人員非常有幫助,而不是用這種語言編寫只需幾行語法就可以完成的大代碼。
  • Python 是一種面向對象的語言。
  • 縮進在這種語言中非常重要。 縮進有助於代碼的可讀性,並有助於理解代碼塊將如何執行。 所有代碼塊都需要縮進。 不需要像其他編程語言那樣的任何花括號和 endif 語句。

查看我們的數據科學課程以提高自己的技能。

Python 可以做什麼?

  • Python 有很多應用。 其中一些是網絡開發、軟件開發和系統腳本。
  • Python 在創建 Web 應用程序時很有用。
  • Python 可用於創建工作流。 它具有連接到數據庫系統的特性,然後可以讀取系統中的文件並對這些文件進行修改。
  • 當我們需要處理大數據時,Python 非常有用,因為它可以在需要時執行各種複雜的數學運算。
  • Python 幫助工程師將概念轉化為功能項目。

Python 內置函數:

我們熟悉大數據這個術語,數據科學在當今世界發揮著至關重要的作用。 許多組織正在研究大數據以影響他們的數據,以便根據過去未使用的數據所做的分析或預測做出正確的決策。 公司正在使用 Python 對數據執行各種功能,以查找模式並據此做出正確的決策。 數據集可能存在偏差,分析師在處理數據時必須牢記這一點,以避免任何代價高昂的錯誤。 因此,我們使用各種技術來避免數據中的任何錯誤,這些錯誤可能會對模型構建造成任何干擾。 為此,我們使用了大量函數,其中一些是 Python 內置函數。

Python 有一些非常有用的用於計算目的的內置函數。 有整數除法、絕對值、複數和模數等多種功能。 其中一個函數是 round(),它在處理浮點數時非常方便。 Python 中的捨入不同於我們在執行數學算術函數時遇到的捨入。 這可以歸因於這樣一個事實,即在進行正常的數學計算時,我們使用基於數字 10 的十進制系統,而與此相反,計算機以二進制數字格式處理和存儲每個整數,即“0 ”和“1”。 因此,我們可能最終看不到在 Python 中使用 round 函數時預期的結果。 因此,我們必須了解 Python 中的 round 函數根據特定的捨入策略給出輸出,對於使用它的特定情況,這可能不會產生預期的結果。 round 函數的基本功能是返回一個浮點數。

四捨五入有多大影響?

假設你今天過得很愉快,發現地上有 100 美元。 與其一次性花光所有資金,不如考慮投資一定數量購買多隻股票。

你也知道股票的價值完全取決於需求和供應。 嘗試購買某隻股票的人越多,該股票的價值就會逐漸增加。 股票的價值可以根據市場需求每秒變化。

現在是時候進行實驗了。 讓我們分解所有被購買股票的價值,然後通過一個隨機數每秒記錄它們的波動,介於 0.05 美元和 0.06 美元之間。 提到的變體可能不是一個很好的帶有兩位小數的值。 考慮一個示例,其中總值在一秒增加 0.036332 美元,在下一秒減少 0.022223 美元。

現在,如果我們不需要跟踪小數點後第五位和第六位,我們可以決定砍掉小數點後第三位的數字。 這種方法被稱為截斷數字。 此處可能會出現錯誤,但通過僅保留小數點後三位,此錯誤可能是最不重要的。 為了進一步了解這個場景,讓我們看看 truncate() 函數是如何工作的。

比方說,我們有一個數字 n。 因此,truncate() 將通過將數字 n 乘以 1000 將小數點向右移動最多三位來處理此數字。乘法後,我們得到一個新數字,即 int()。 最後,我們將數字再次除以 1000,並將小數點向左移動。

現在,讓我們定義假設的主要參數。 我們現在需要兩個變量,一個用於在模擬完成後跟踪我們股票的實際價值,另一個用於我們在每一步都削減到小數點後三位之後的股票價值。

我們將藉助以下語法將變量初始化為 100:

現在模擬運行了 1,000,000 秒(大約 11.5 天)。 模擬將循環進行。 它將在 999 和 0 之間的數字範圍內循環。該值將在從 range() 獲取的值的每一步保存在變量中。 使用 random.randn() 在循環的每一步將生成一個介於 -0.5 到 0.5 之間的隨機數,並將該數字分配給 randn 變量。 投資價值現在將通過將實際值添加到 randn 來計算,然後我們將 randn 添加到截斷值。 我們將獲得截斷的總數,然後使用 truncate() 截斷該總值。

我們在執行循環後觀察變量 actual_value; 我們只損失了大約 3.55 美元。 但是,如果我們查看 truncated_value,似乎整個金額都丟失了。

注意:上述示例中使用的 random.seed() 函數涉及為偽隨機數設置種子。 因此,可以重現輸出。

我們可以清楚地觀察到使用 round() 和 truncate() 後結果的差異。

我們如何使用舍入函數非常重要,作為軟件開發人員,我們需要了解常見問題是什麼以及如何處理它們。 因此,讓我們研究一下舍入值的不同方法以及如何在 Python 中實現它。

從零開始四捨五入:

當我們仔細觀察 round_half_up()round_half_down()時,我們注意到它們都不是關於零對稱的。 可以通過從零舍入領帶來引入對稱性。

我們首先將小數點向右移動。 然後我們看一下這個新數字中小數點右邊的數字 d。 這種情況有四種情況:

  1. 如果n為正且d >= 5 ,則將值四捨五入
  2. 如果n為正且d < 5 ,則將值向下舍入
  3. 如果n為負且d >= 5 ,則將值向下舍入
  4. 如果n為負且d < 5 ,則將值四捨五入

按照上述方法四捨五入後,我們將小數點向左移回。

四捨五入到偶數:

當數據集中的捨入值四捨五入到最接近的偶數時,一種避免舍入偏差的方法。 讓我們看下面的幾個例子:

round() 函數沒有偏差,但並不完美。 但是,如果數據集中的大多數值四捨五入而不是四捨五入,則仍然會引入舍入偏差。 Python 內置函數 round() 中使用了“四捨五入策略”。

申請數據科學行政 PG 課程

概括:

  • 現在,我們已經了解了 Python 中的各種舍入方法。 有完善真實世界數據的最佳實踐。
  • 我們可以在 numpy 和 pandas 數據框中使用舍入。
  • 可能存在舍入誤差,但為此,我們有多種不同的方法來舍入值並避免這些誤差。
想要分享這篇文章?

為未來的職業做準備

申請數據科學理學碩士