ฝึกใช้งาน apply family ฟังชั่น for loop ยอดนิยมใน R

การเขียน for loop ใน R อาจจะดูยุ่งยากและมีปัญหาเรื่อง performance i.e. ความเร็วในการรันโปรแกรมจะช้ากว่าการเขียนโค้ดแบบอื่นๆ วันนี้เราจะอธิบายฟังชั่น apply() และเทคนิคที่จะช่วยให้โปรแกรมรันเร็วขึ้นแบบไม่ต้องเขียน for loop เลย ถ้าใครยังไม่ว่า for loop ปกติเขียนยังไง ลองอ่านบทความ control flow ของเราก่อน ข้อมูลที่ใช้สอนใน tutorial นี้ชื่อ mtcars เราสามารถโหลด data frame ใน RStudio ด้วยโค้ดนี้ Regular For Loop สมมติถ้าเราต้องการหา column_mean ของแต่ละคอลั่มใน data frame การเขียน for loop ปกติจะค่อนข้างยุ่งยาก เขียนโค้ดอย่างน้อย 4-5 lines เราใช้ฟังชั่น seq_along() สร้าง numeric vector 1:11 ความยาวเท่ากับจำนวนคอลั่มของ…

Read More

รู้จักกับ Control Flow ทั้งสามแบบในภาษา R

control flow คือ basic statement (หรือ keyword) ที่ใช้ควบคุมพฤติกรรมของโปรแกรมที่เราเขียนใน R หลักๆจะมีอยู่สามแบบคือ if-else for loop while loop ถ้าเข้าใจหลักการ control flow ทั้งสามแบบจะช่วยให้เราอ่านโค้ด R ที่คนอื่นโพสต์บนอินเตอร์เน็ตได้ง่ายขึ้นมาก และผลพลอยได้คือจะช่วยให้เราเขียน R เป็นเร็วขึ้นด้วย ตัวอย่าง control flow diagram ด้านล่างจำลองสถานการณ์เราพกเงิน $50 เข้าคาสิโนโยนลูกเต๋าเสี่ยงดวง เราจะเล่นไปเรื่อยๆจนกว่าเงินจะหมด (broke) หรือโชคดีชนะได้เงิน $100 (won 100) แล้วค่อยกลับบ้าน (END) Note – เนื้อหาในบทความวันนี้สามารถประยุกต์ใช้ได้กับทุกภาษาตั้งแต่ R, Python, Java, Scala, C เป็นต้น เพราะทุกภาษามี control flow! มันคือ building block ที่สำคัญเวลาเราเริ่มเขียนโปรแกรมใหม่ๆ…

Read More