Workflow: projects
วันหนึ่งคุณจะต้องเลิก R ไปทำอย่างอื่นและกลับไปที่การวิเคราะห์ของคุณในวันถัดไป วันหนึ่งคุณจะทำงานเกี่ยวกับการวิเคราะห์หลาย ๆ ครั้งพร้อม ๆ กันว่าใช้ R ทั้งหมดและคุณต้องการให้แยกออกจากกัน วันหนึ่งคุณจะต้องนำข้อมูลจากโลกภายนอกเข้าสู่ R และส่งผลตัวเลขและตัวเลขจาก R กลับสู่โลก ในการจัดการกับสถานการณ์ในชีวิตจริงเหล่านี้คุณต้องตัดสินใจสองครั้ง:
ด้วยสคริปต์ R ของคุณ (และไฟล์ข้อมูลของคุณ) คุณสามารถสร้างสภาพแวดล้อมใหม่ได้ ยากที่จะสร้างสคริปต์ R ของคุณจากสภาพแวดล้อมของคุณมากขึ้น! คุณจะต้องพิมพ์รหัสใหม่จากหน่วยความจำ (ทำผิดพลาดทุกครั้ง) หรือคุณจะต้องตรวจสอบประวัติ R ของคุณอย่างรอบคอบ
เพื่อสนับสนุนพฤติกรรมนี้ผมขอแนะนำให้คุณสั่งให้ RStudio ไม่รักษาพื้นที่ทำงานของคุณระหว่างเซสชัน:
นี่จะทำให้คุณรู้สึกเจ็บปวดในระยะสั้นเพราะตอนนี้เมื่อคุณรีสตาร์ท RStudio จะไม่จดจำผลลัพธ์ของโค้ดที่คุณวิ่งไปครั้งล่าสุด แต่ความเจ็บปวดระยะสั้นนี้จะช่วยลดความทุกข์ทรมานในระยะยาวได้เนื่องจากบังคับให้คุณจับภาพการโต้ตอบที่สำคัญทั้งหมดในโค้ดของคุณ ไม่มีอะไรที่เลวร้ายยิ่งกว่าการค้นพบสามเดือนหลังจากข้อเท็จจริงที่ว่าคุณเก็บผลการคำนวณที่สำคัญไว้ในพื้นที่ทำงานของคุณเท่านั้นไม่ใช่การคำนวณเองในโค้ดของคุณ
มีแป้นพิมพ์ลัดที่ยอดเยี่ยมซึ่งจะทำงานร่วมกันเพื่อให้แน่ใจว่าคุณได้บันทึกส่วนสำคัญ ๆ ของโค้ดไว้ในตัวแก้ไขแล้ว:
และคุณสามารถพิมพ์รหัส R นี้ได้โดยเรียกใช้ getwd ():
ฉันไม่แนะนำ แต่คุณยังสามารถตั้งค่าไดเรกทอรีการทำงานจากภายใน R:
1.ความแตกต่างที่สำคัญที่สุดคือการแยกส่วนประกอบของเส้นทาง Mac และ Linux ใช้ slashes (เช่น plot / diamonds.pdf) และ Windows ใช้เครื่องหมายแบ็กสแลช (เช่น plot \ diamonds.pdf) R สามารถทำงานได้กับทั้งสองประเภท (ไม่ว่าคุณกำลังใช้แพลตฟอร์มใดอยู่) แต่น่าเสียดายที่เครื่องหมายทับขวาหมายถึงบางสิ่งที่พิเศษสำหรับ R และเพื่อให้ได้เครื่องหมายทับขวาเดียวในเส้นทางคุณต้องพิมพ์เครื่องหมายทับสองเครื่องหมาย! ที่ทำให้ชีวิตหงุดหงิดดังนั้นฉันขอแนะนำให้ใช้รูปแบบ Linux / Mac โดยใช้ฟอร์เวิร์ดสแลช
2.เส้นทางสัมบูรณ์ (เช่นเส้นทางที่ชี้ไปยังที่เดียวกันโดยไม่คำนึงถึงไดเรกทอรีที่ใช้งาน) มีลักษณะแตกต่างกัน ใน Windows พวกเขาเริ่มต้นด้วยอักษรระบุไดรฟ์ (เช่น C :) หรือเครื่องหมายแบ็คสแลชสอง (เช่น \\ servername) และใน Mac / Linux จะเริ่มต้นด้วยเครื่องหมายทับ "/" (เช่น / users / hadley) คุณไม่ควรใช้เส้นทางที่แน่นอนในสคริปต์เพราะจะขัดขวางการแชร์: ไม่มีใครจะมีการกำหนดค่าไดเรกทอรีเหมือนกับที่คุณทำ
3.ความแตกต่างเล็กน้อยครั้งสุดท้ายคือสถานที่ที่ ~ ชี้ไป ~ เป็นทางลัดที่สะดวกในไดเรกทอรีบ้านของคุณ Windows ไม่ได้จริงๆมีความคิดของไดเรกทอรีบ้านดังนั้นจึงแทนชี้ไปที่ไดเรกทอรีเอกสารของคุณ
ลองทำโครงการให้คุณใช้ในขณะที่คุณทำงานผ่านส่วนที่เหลือของหนังสือเล่มนี้ คลิกไฟล์> โครงการใหม่แล้ว:
ตอนนี้ให้ป้อนคำสั่งต่อไปนี้ในโปรแกรมแก้ไขสคริปต์แล้วบันทึกไฟล์เรียกว่า "diamonds.R" จากนั้นให้เรียกใช้สคริปต์ที่สมบูรณ์ซึ่งจะบันทึกไฟล์ PDF และ CSV ไว้ในไดเร็กทอรีโครงการของคุณ อย่ากังวลเกี่ยวกับรายละเอียดคุณจะได้เรียนรู้ในภายหลังในหนังสือ
ในคอมพิวเตอร์ที่คุณชื่นชอบคุณต้องการค้นหาไฟล์ diamonds.pdf ของคุณและคุณจะพบ PDF (ไม่แปลกใจ) แต่ยังเป็นสคริปต์ที่สร้างขึ้น (diamonds.R) นี้เป็นใหญ่ชนะ! วันหนึ่งคุณจะต้องการสร้างร่างใหม่หรือเข้าใจว่ามันมาจากไหน ถ้าคุณประหยัดตัวเลขอย่างจริงจังในไฟล์ที่มีรหัส R และไม่ใช้เมาส์หรือคลิปบอร์ดคุณจะสามารถทำซ้ำการทำงานเก่าได้อย่างง่ายดาย!
ทุกอย่างที่คุณต้องการอยู่ในที่เดียวและแยกออกจากโครงการอื่น ๆ ทั้งหมดที่คุณกำลังทำงานอยู่อย่างชัดเจน
referable http://r4ds.had.co.nz/workflow-projects.html
- การวิเคราะห์ของคุณมีความ "จริง" อย่างไรนั่นคือสิ่งที่คุณจะบันทึกเป็นบันทึกที่ยั่งยืนของสิ่งที่เกิดขึ้น?
- การวิเคราะห์ของคุณอยู่ที่ไหน?
1 What is real?
ในฐานะผู้ใช้ R เริ่มต้นคุณสามารถพิจารณาสภาพแวดล้อมของคุณได้ (เช่นวัตถุที่อยู่ในบานหน้าต่างด้านสิ่งแวดล้อม) "จริง" อย่างไรก็ตามในระยะยาวคุณจะดีขึ้นมากถ้าคุณพิจารณาสคริปต์ R ของคุณว่า "จริง"ด้วยสคริปต์ R ของคุณ (และไฟล์ข้อมูลของคุณ) คุณสามารถสร้างสภาพแวดล้อมใหม่ได้ ยากที่จะสร้างสคริปต์ R ของคุณจากสภาพแวดล้อมของคุณมากขึ้น! คุณจะต้องพิมพ์รหัสใหม่จากหน่วยความจำ (ทำผิดพลาดทุกครั้ง) หรือคุณจะต้องตรวจสอบประวัติ R ของคุณอย่างรอบคอบ
เพื่อสนับสนุนพฤติกรรมนี้ผมขอแนะนำให้คุณสั่งให้ RStudio ไม่รักษาพื้นที่ทำงานของคุณระหว่างเซสชัน:
นี่จะทำให้คุณรู้สึกเจ็บปวดในระยะสั้นเพราะตอนนี้เมื่อคุณรีสตาร์ท RStudio จะไม่จดจำผลลัพธ์ของโค้ดที่คุณวิ่งไปครั้งล่าสุด แต่ความเจ็บปวดระยะสั้นนี้จะช่วยลดความทุกข์ทรมานในระยะยาวได้เนื่องจากบังคับให้คุณจับภาพการโต้ตอบที่สำคัญทั้งหมดในโค้ดของคุณ ไม่มีอะไรที่เลวร้ายยิ่งกว่าการค้นพบสามเดือนหลังจากข้อเท็จจริงที่ว่าคุณเก็บผลการคำนวณที่สำคัญไว้ในพื้นที่ทำงานของคุณเท่านั้นไม่ใช่การคำนวณเองในโค้ดของคุณ
มีแป้นพิมพ์ลัดที่ยอดเยี่ยมซึ่งจะทำงานร่วมกันเพื่อให้แน่ใจว่าคุณได้บันทึกส่วนสำคัญ ๆ ของโค้ดไว้ในตัวแก้ไขแล้ว:
- กด Cmd / Ctrl + Shift + F10 เพื่อเริ่ม RStudio ใหม่
- กด cmd / Ctrl + Shift + S เพื่อเรียกใช้สคริปต์ปัจจุบันอีกครั้ง
2 การวิเคราะห์ของคุณอยู่ที่ไหน
R มีความคิดที่มีประสิทธิภาพของไดเร็กทอรีการทำงาน ที่นี่ R มองหาไฟล์ที่คุณขอให้โหลดและจะวางไฟล์ใด ๆ ที่คุณขอให้บันทึก RStudio แสดงไดเรกทอรีการทำงานปัจจุบันของคุณที่ด้านบนสุดของคอนโซล:และคุณสามารถพิมพ์รหัส R นี้ได้โดยเรียกใช้ getwd ():
getwd()
#> [1] "/Users/hadley/Documents/r4ds/r4ds"
ในฐานะที่เป็นผู้ใช้ R เริ่มต้นคุณจะสามารถให้ไดเรกทอรีบ้านไดเร็กทอรีเอกสารหรือไดเร็กทอรีแปลก ๆ ในคอมพิวเตอร์ของคุณเป็นไดเรกทอรีที่ใช้งานได้ของ R แต่คุณเป็นบทหกบทในหนังสือเล่มนี้และคุณไม่ใช่ผู้เริ่มต้นระดับ เร็ว ๆ นี้คุณควรพัฒนาเพื่อจัดโครงการวิเคราะห์ของคุณลงในไดเร็กทอรีและเมื่อทำงานในโครงการจะตั้งไดเรกทอรี R ของการทำงานไปยังไดเรกทอรีที่เกี่ยวข้องฉันไม่แนะนำ แต่คุณยังสามารถตั้งค่าไดเรกทอรีการทำงานจากภายใน R:
setwd("/path/to/my/CoolProject")
แต่คุณไม่ควรทำเช่นนี้เพราะมีวิธีที่ดีกว่า วิธีที่ทำให้คุณอยู่บนเส้นทางในการจัดการงาน R ของคุณเช่นเดียวกับผู้เชี่ยวชาญ3 เส้นทางและไดเรกทอรี
เส้นทางและไดเร็กทอรีมีความซับซ้อนเพียงเล็กน้อยเนื่องจากมีรูปแบบพื้นฐานสองแบบ ได้แก่ Mac / Linux และ Windows มีสามวิธีหลักที่พวกเขาต่างกัน:1.ความแตกต่างที่สำคัญที่สุดคือการแยกส่วนประกอบของเส้นทาง Mac และ Linux ใช้ slashes (เช่น plot / diamonds.pdf) และ Windows ใช้เครื่องหมายแบ็กสแลช (เช่น plot \ diamonds.pdf) R สามารถทำงานได้กับทั้งสองประเภท (ไม่ว่าคุณกำลังใช้แพลตฟอร์มใดอยู่) แต่น่าเสียดายที่เครื่องหมายทับขวาหมายถึงบางสิ่งที่พิเศษสำหรับ R และเพื่อให้ได้เครื่องหมายทับขวาเดียวในเส้นทางคุณต้องพิมพ์เครื่องหมายทับสองเครื่องหมาย! ที่ทำให้ชีวิตหงุดหงิดดังนั้นฉันขอแนะนำให้ใช้รูปแบบ Linux / Mac โดยใช้ฟอร์เวิร์ดสแลช
2.เส้นทางสัมบูรณ์ (เช่นเส้นทางที่ชี้ไปยังที่เดียวกันโดยไม่คำนึงถึงไดเรกทอรีที่ใช้งาน) มีลักษณะแตกต่างกัน ใน Windows พวกเขาเริ่มต้นด้วยอักษรระบุไดรฟ์ (เช่น C :) หรือเครื่องหมายแบ็คสแลชสอง (เช่น \\ servername) และใน Mac / Linux จะเริ่มต้นด้วยเครื่องหมายทับ "/" (เช่น / users / hadley) คุณไม่ควรใช้เส้นทางที่แน่นอนในสคริปต์เพราะจะขัดขวางการแชร์: ไม่มีใครจะมีการกำหนดค่าไดเรกทอรีเหมือนกับที่คุณทำ
3.ความแตกต่างเล็กน้อยครั้งสุดท้ายคือสถานที่ที่ ~ ชี้ไป ~ เป็นทางลัดที่สะดวกในไดเรกทอรีบ้านของคุณ Windows ไม่ได้จริงๆมีความคิดของไดเรกทอรีบ้านดังนั้นจึงแทนชี้ไปที่ไดเรกทอรีเอกสารของคุณ
4 RStudio projects
R จัดเก็บไฟล์ทั้งหมดที่เกี่ยวข้องกับโครงการไว้ด้วยกัน - ใส่ข้อมูล, สคริปต์ R, ผลการวิเคราะห์, ตัวเลข นี่คือการปฏิบัติที่ชาญฉลาดและเป็นกันเองที่ RStudio ได้สนับสนุนในตัวโครงการนี้ผ่านทางโครงการลองทำโครงการให้คุณใช้ในขณะที่คุณทำงานผ่านส่วนที่เหลือของหนังสือเล่มนี้ คลิกไฟล์> โครงการใหม่แล้ว:
เรียก r4ds โครงการของคุณและคิดอย่างรอบคอบเกี่ยวกับไดเรกทอรีย่อยที่คุณใส่โครงการมาหากคุณไม่เก็บมันบางสมเหตุสมผลก็จะยากที่จะหาได้ในอนาคต!
เมื่อขั้นตอนนี้เสร็จสมบูรณ์แล้วคุณจะได้รับโครงการ RStudio ใหม่สำหรับหนังสือเล่มนี้ ตรวจสอบว่าไดเร็กทอรี "home" ของโครงการของคุณคือไดเร็กทอรีปัจจุบัน:
getwd()
#> [1] /Users/hadley/Documents/r4ds/r4ds
เมื่อใดก็ตามที่คุณอ้างถึงไฟล์ที่มีเส้นทางสัมพัทธ์จะมองหาที่นี่ตอนนี้ให้ป้อนคำสั่งต่อไปนี้ในโปรแกรมแก้ไขสคริปต์แล้วบันทึกไฟล์เรียกว่า "diamonds.R" จากนั้นให้เรียกใช้สคริปต์ที่สมบูรณ์ซึ่งจะบันทึกไฟล์ PDF และ CSV ไว้ในไดเร็กทอรีโครงการของคุณ อย่ากังวลเกี่ยวกับรายละเอียดคุณจะได้เรียนรู้ในภายหลังในหนังสือ
library(tidyverse)
ggplot(diamonds, aes(carat, price)) +
geom_hex()
ggsave("diamonds.pdf")
write_csv(diamonds, "diamonds.csv")
ออกจาก RStudio ตรวจสอบโฟลเดอร์ที่เกี่ยวข้องกับโครงการของคุณ - สังเกตไฟล์. Prod ดับเบิลคลิกที่ไฟล์เพื่อเปิดโครงการใหม่ แจ้งให้ทราบว่าคุณได้รับกลับไปที่ที่คุณซ้าย: มันเป็นไดเรกทอรีที่ทำงานเดียวกันและประวัติคำสั่งและไฟล์ทั้งหมดที่คุณกำลังทำงานอยู่ยังคงเปิดอยู่ เนื่องจากคุณทำตามคำแนะนำข้างต้นคุณจะมีสภาพแวดล้อมใหม่ที่สมบูรณ์และรับประกันว่าคุณจะเริ่มต้นด้วยกระดานชนวนที่สะอาดในคอมพิวเตอร์ที่คุณชื่นชอบคุณต้องการค้นหาไฟล์ diamonds.pdf ของคุณและคุณจะพบ PDF (ไม่แปลกใจ) แต่ยังเป็นสคริปต์ที่สร้างขึ้น (diamonds.R) นี้เป็นใหญ่ชนะ! วันหนึ่งคุณจะต้องการสร้างร่างใหม่หรือเข้าใจว่ามันมาจากไหน ถ้าคุณประหยัดตัวเลขอย่างจริงจังในไฟล์ที่มีรหัส R และไม่ใช้เมาส์หรือคลิปบอร์ดคุณจะสามารถทำซ้ำการทำงานเก่าได้อย่างง่ายดาย!
5 Summary
สรุปได้ว่าโครงการ RStudio ทำให้คุณมีขั้นตอนการทำงานที่มั่นคงซึ่งจะให้บริการคุณได้ดีในอนาคต:- สร้างโครงการ RStudio สำหรับโครงการวิเคราะห์ข้อมูลแต่ละโครงการ
- เก็บไฟล์ข้อมูลไว้ที่นั่น เราจะพูดถึงการโหลดข้อมูลเหล่านี้ในการนำเข้าข้อมูล R
- เก็บสคริปต์ไว้ที่นั่น แก้ไข, เรียกใช้ไฟล์เหล่านี้เป็นบิตหรือโดยรวม
- บันทึกผลลัพธ์ของคุณ (แปลงและข้อมูลที่ทำความสะอาด) ที่นั่น
- ใช้เฉพาะเส้นทางสัมพัทธ์เท่านั้นไม่ใช่เส้นทางที่แน่นอน
ทุกอย่างที่คุณต้องการอยู่ในที่เดียวและแยกออกจากโครงการอื่น ๆ ทั้งหมดที่คุณกำลังทำงานอยู่อย่างชัดเจน
referable http://r4ds.had.co.nz/workflow-projects.html
ความคิดเห็น
แสดงความคิดเห็น