การจัดระเบียบโปรเจกต์

การเขียน R แบบ Defensive Programming

Dr. Colin Gillespie

Jumping Rivers

เริ่มจากสิ่งเล็กน้อย

การวิเคราะห์ใน R เริ่มต้นเล็กน้อย แต่แล้ว

  • 1 บรรทัด กลายเป็น 10
  • 1 แพ็กเกจ กลายเป็น 5
  • 1 ไฟล์ กลายเป็นความวุ่นวาย
การเขียน R แบบ Defensive Programming

การตั้งค่าโปรเจกต์

ทุกโปรเจกต์ที่ทำ

  • มีไดเรกทอรีเป็นของตัวเอง
  • มีชื่อที่สื่อความหมาย

ชื่อไดเรกทอรีบอก บริบท ของสคริปต์

การเขียน R แบบ Defensive Programming

ไดเรกทอรี: input/

ไดเรกทอรีนี้เก็บข้อมูล โดยทั่วไปได้แก่

  • ไฟล์ csv และ Excel
  • ไม่มีโค้ด R

แก้ไขข้อมูลใน R เท่านั้น

การเขียน R แบบ Defensive Programming

ไดเรกทอรี: R/

โค้ด R ทั้งหมดอยู่ในไดเรกทอรีนี้

สังเกต ว่าชื่อไดเรกทอรีไม่ใช่

  • R_analysis
  • R_code
  • R_survival

แต่เป็นแค่ R/

การเขียน R แบบ Defensive Programming

ไดเรกทอรี: R/

ในไดเรกทอรีนี้จะมีไฟล์ชื่อ

  • load.R

ไฟล์นี้โหลดข้อมูลจาก input/

ทุกโปรเจกต์มีโครงสร้างคล้ายกัน

  • ส่งโปรเจกต์ไหนให้ก็โหลดข้อมูลได้เลย

การเขียน R แบบ Defensive Programming

ไฟล์ load.R

ใช้ path แบบ relative ทั้งหมด

battles <- read_csv("input/battles.csv")
foes <- read_xlsx("input/foes.xlsx")

โค้ดพกพาได้

การเขียน R แบบ Defensive Programming

ไฟล์ R อื่นๆ

ไฟล์ R ทั้งหมดอยู่ในไดเรกทอรี R!

  • clean.R - สำหรับทำความสะอาดข้อมูล
  • function.R - ฟังก์ชันช่วยเสริม
  • analysis.R - การวิเคราะห์จริง

ชื่อมาตรฐานที่ใช้ในทุกโปรเจกต์

การเขียน R แบบ Defensive Programming

ถึงตาคุณแล้ว

การเขียน R แบบ Defensive Programming

Preparing Video For Download...