อาร์กิวเมนต์หลายตัว (1)
ดังที่เห็นในตัวอย่างอาร์กิวเมนต์แบบ optional ฟังก์ชันสามารถมีอาร์กิวเมนต์ได้หลายตัว ซึ่งช่วยเพิ่มความยืดหยุ่นให้กับฟังก์ชันของคุณ ลองดูตัวอย่างนี้
pow <- function(x, power = 2) {
x^power
}
pow(2)
[1] 4
pow(2, power = 3)
[1] 8
แทนที่จะเป็นฟังก์ชัน square() เราได้สร้างเวอร์ชันที่รองรับการยกกำลังด้วยค่าใดก็ได้
อาร์กิวเมนต์ power เป็นแบบ optional และมีค่าเริ่มต้นเป็น 2 แต่สามารถเปลี่ยนได้ตามต้องการ นอกจากนี้ยังเป็นตัวอย่างของการเพิ่มอาร์กิวเมนต์หลายตัว โดยแต่ละอาร์กิวเมนต์คั่นด้วยเครื่องหมายจุลภาค และกำหนดค่าเริ่มต้นด้วยเครื่องหมายเท่ากับ
มาเพิ่มความสามารถให้กับ percent_to_decimal() เพื่อให้ปัดตัวเลขทศนิยมได้ตามจำนวนหลักที่ต้องการ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
R ระดับกลางสำหรับการเงิน
คำแนะนำการฝึกหัด
- เติมช่องว่างในฟังก์ชัน
percent_to_decimal()ที่ปรับปรุงแล้ว ให้ทำดังนี้:- เพิ่มอาร์กิวเมนต์แบบ optional ตัวที่สองชื่อ
digitsโดยกำหนดค่าเริ่มต้นเป็น2 - ในส่วนเนื้อหาของฟังก์ชัน ให้หาร
percentด้วย 100 แล้วกำหนดผลลัพธ์ให้กับdecimal - ใช้ฟังก์ชัน
roundกับdecimalและกำหนดอาร์กิวเมนต์ที่สองเป็นdigitsเพื่อระบุจำนวนตำแหน่งทศนิยม
- เพิ่มอาร์กิวเมนต์แบบ optional ตัวที่สองชื่อ
- ฟังก์ชันนี้รองรับเวกเตอร์ที่มีความยาวมากกว่า 1 ด้วย โดย
percentsได้กำหนดไว้ให้แล้ว - เรียก
percent_to_decimal()โดยส่งpercentsเป็นอาร์กิวเมนต์ โดยไม่ต้องระบุอาร์กิวเมนต์แบบ optional - เรียก
percent_to_decimal()โดยส่งpercentsอีกครั้ง แต่ครั้งนี้ระบุdigits = 4
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Percent to decimal function
percent_to_decimal <- function(percent, ___ = ___) {
___ <- percent / 100
___(decimal, ___)
}
# percents
percents <- c(25.88, 9.045, 6.23)
# percent_to_decimal() with default digits
___
# percent_to_decimal() with digits = 4
___