โครงสร้างข้อมูล 6 แบบที่ใช้บ่อยที่สุดใน R
เผยแพร่แล้ว: 2020-02-03ในฐานะที่เป็นโปรแกรมเมอร์และผู้เขียนโค้ดซอฟต์แวร์ คุณต้องตระหนักถึงความจำเป็นที่ตัวแปรในการจัดเก็บข้อมูล ตัวแปรเหล่านี้สงวนไว้ในตำแหน่งหน่วยความจำที่แตกต่างกันเพื่อเก็บค่า ดังนั้น การสร้างตัวแปรหมายถึงการสำรองพื้นที่บางส่วนในหน่วยความจำ เป็นข้อมูลนี้ที่จัดเรียงตามโครงสร้างข้อมูลเพื่อใช้ในคอมพิวเตอร์ได้อย่างมีประสิทธิภาพ
ต่างจากภาษาโปรแกรมยอดนิยมเช่น C และ Java R ไม่มีตัวแปรที่จะประกาศเป็นข้อมูล R มีวัตถุ R (โครงสร้างข้อมูล) ที่กลายเป็นประเภทข้อมูลของตัวแปรที่ต้องการ โครงสร้างข้อมูลใน R มีหลายประเภท แต่ก่อนอื่น เรามาทำความเข้าใจว่าโครงสร้างข้อมูลคืออะไร!
สารบัญ
โครงสร้างข้อมูลคืออะไร?
ใน R โครงสร้างข้อมูลเป็นเครื่องมือที่มีหลายค่า โปรดทราบว่าในการเขียนโปรแกรม R ข้อมูลที่มีค่าเดียวแทบจะไม่เคยใช้เลย เป็นไปได้มากกว่าที่จะใช้ R เพื่อรวมตัวเลข คำ หรือค่าประเภทต่างๆ เข้าด้วยกัน นี่คือที่มาของโครงสร้างข้อมูล โดยจะจัดกลุ่มค่าต่างๆ เหล่านี้ไว้ด้วยกันเพื่อให้ทำงานกับข้อมูลจำนวนมากได้ง่ายขึ้นในคราวเดียว
โครงสร้างข้อมูลประกอบด้วยประเภทข้อมูลที่กำหนดประเภทของข้อมูลที่จัดเก็บไว้ใน zvalue ตัวอย่างเช่น หมายเลข 13 เป็น ประเภทข้อมูลที่เป็นตัวเลข ในขณะที่ " สิบสาม " มี ประเภทข้อมูลอักขระ เรียกอีกอย่างว่าสตริง
เมื่อคุณเข้าใจแล้ว มาดูโครงสร้างข้อมูลประเภทต่างๆ กัน
ประเภทของโครงสร้างข้อมูล
เพื่อให้การวิเคราะห์และดำเนินการข้อมูลเป็นเรื่องง่ายและมีประสิทธิภาพ มีโครงสร้างข้อมูลหลักห้าประเภทในการเขียนโปรแกรม R

ลองมาดูที่แต่ละของพวกเขาในรายละเอียด
- เวกเตอร์
หน้าที่ของ R Vectors คือการจัดกลุ่มค่าหลายค่าของประเภทข้อมูลเดียวกัน เป็นโครงสร้างข้อมูลพื้นฐานที่สุดใน R และมีสองส่วนคือ Atomic Vectors และ Lists ต่อไปนี้เป็นคุณสมบัติทั่วไป:
- ประเภทของฟังก์ชัน (มันคืออะไร)
- ความยาวของฟังก์ชัน (จำนวนองค์ประกอบ)
- แอตทริบิวต์ของฟังก์ชัน (เมตาดาต้าเพิ่มเติมตามอำเภอใจ)
ขณะนี้ ในขณะที่ Atomic Vectors มีไว้สำหรับการรวมกลุ่มข้อมูลประเภทเดียวกัน รายการสามารถจัดกลุ่มข้อมูลประเภทต่างๆ ได้ เวกเตอร์อะตอมมีสี่ประเภท:
- ประเภทข้อมูลตัวเลข
- ประเภทข้อมูลจำนวนเต็ม
- ประเภทข้อมูลตัวละคร
- ประเภทข้อมูลลอจิก
คุณสามารถสร้างเวกเตอร์โดยใช้ฟังก์ชัน c()
ตัวอย่างเช่น:
หากคุณเรียกใช้โค้ดข้างต้น จะมีการสร้างเวกเตอร์ชื่อ 'thisVector' โดยมีตัวเลขทั้งหมดตั้งแต่ 1 ถึง 30
ในการจัดเก็บค่าอักขระในเวกเตอร์ คุณจะต้องใช้เครื่องหมายคำพูดคู่ดังนี้:
แม้ว่าคุณจะสามารถจัดเก็บข้อมูลประเภทต่างๆ ได้ในเวกเตอร์ แต่ขอแนะนำว่าอย่าแปลงค่าทั้งหมดเป็นประเภทอักขระ
- รายการ
ดังที่กล่าวไว้ข้างต้น รายการสามารถมีองค์ประกอบข้อมูลประเภทใดก็ได้ เช่น สตริง ตัวเลข เวกเตอร์ และแม้แต่รายการอื่น ตัวอย่างเช่น คุณสามารถสร้างรายการ 80 ตัวเลข 30 คำและ 42 เวกเตอร์ ฟังก์ชั่นที่จะใช้คือ list()
ตัวอย่าง:
เอาท์พุท:
เนื่องจาก Lists สามารถมีรายการอื่นๆ ได้เช่นกัน บางครั้งจึงเรียกว่า Recursive Vectors นี่คือเหตุผลที่ว่าทำไมพวกมันถึงแตกต่างจาก Atomic Vectors อย่างมาก
- ปัจจัย
พูดง่ายๆ ปัจจัยคือประเภทของเวกเตอร์ที่สามารถจัดเก็บได้เฉพาะค่าที่กำหนดไว้ล่วงหน้าเท่านั้น มันถูกใช้เพื่อจัดเก็บข้อมูลหมวดหมู่เป็นหลัก จัดหมวดหมู่ค่าคอลัมน์ เช่น "ชาย" "หญิง" "TRUE" "FALSE" เป็นต้น
ปัจจัยต่างกันในแง่ที่ว่าทั้งสตริงและจำนวนเต็มสามารถเก็บไว้ในนั้นได้ ในการสร้างปัจจัย ให้ใช้ฟังก์ชัน factor() มีประโยชน์มากเมื่อมีค่าที่เป็นไปได้มากมายสำหรับตัวแปรหนึ่งๆ และคุณรู้ค่าทั้งหมดนั้น
ในการเขียนโปรแกรม R เวกเตอร์อักขระจะถูกแปลงเป็นเวกเตอร์โดยอัตโนมัติ คุณสามารถใช้ stringsAsFactors = FALSE เพื่อระงับการทำงานนี้ จากนั้นจึงแปลงเวกเตอร์อักขระแต่ละตัวเป็นตัวประกอบด้วยตนเอง

- ดาต้าเฟรม
โครงสร้างข้อมูลใน R นี้ใช้เพื่อแสดงข้อมูลในรูปแบบตารางเพื่อให้การวิเคราะห์ข้อมูลง่ายขึ้น ประกอบด้วยเวกเตอร์ที่มีความยาวเท่ากัน ทำให้เกิดโครงสร้างสองมิติ มีคอลัมน์ที่มีค่าของตัวแปรและแถวที่มีชุดค่าของแต่ละคอลัมน์
โดยปกติ data frames สามารถเก็บค่าของข้อมูลประเภทต่างๆ อย่างไรก็ตาม แต่ละคอลัมน์ต้องมีองค์ประกอบเท่ากัน ตัวอย่างเช่น ถ้าคอลัมน์ 1 มี 5 องค์ประกอบ คอลัมน์ 2 ควรมี 5 ค่าด้วย
กรอบข้อมูลมีลักษณะพิเศษบางประการ:
- ไม่ควรเว้นชื่อคอลัมน์ว่างไว้
- ชื่อแต่ละแถวต้องไม่ซ้ำกัน
- คุณสามารถเก็บข้อมูลที่เป็นตัวเลข ตัวประกอบ หรือประเภทอักขระในกรอบข้อมูล
- ทุกคอลัมน์ต้องมีองค์ประกอบข้อมูลจำนวนเท่ากัน
ชุดข้อมูลทั้งหมดที่นำเข้าใน R จะถูกจัดเก็บโดยอัตโนมัติเป็นกรอบข้อมูล
- เมทริกซ์
โครงสร้างข้อมูลเมทริกซ์ใน R อยู่ระหว่าง Vectors และ Data Frames เมทริกซ์คือชุดข้อมูลสองมิติที่สามารถมีองค์ประกอบของข้อมูลประเภทเดียวกันเท่านั้น คุณสามารถสร้างเมทริกซ์โดยใช้ฟังก์ชันเมทริกซ์ ()
ไวยากรณ์ : เมทริกซ์ (data, nrow, ncol, byrow, dimnames)
ที่นี่,
data = องค์ประกอบอินพุตเป็นเวกเตอร์
nrow = จำนวนแถว
ncol = จำนวนคอลัมน์
byrow = การจัดเรียงแบบเรียงแถว
dimnames = ชื่อของคอลัมน์/แถว
ตัวอย่าง:
เอาท์พุท:
แม้ว่าปัจจัยจะมีลักษณะและทำตัวเหมือนเวกเตอร์อักขระ แต่แท้จริงแล้ว ปัจจัยเหล่านั้นเป็นจำนวนเต็ม ในการแปลงปัจจัยเป็นเหล็กใน ให้ใช้ฟังก์ชันเช่น gsub() และ grepl() การใช้ nchar() จะทำให้เกิดข้อผิดพลาด
- อาร์เรย์
อาร์เรย์เป็นเมทริกซ์หลายมิติ เมทริกซ์เป็นกรณีพิเศษของอาร์เรย์ที่มีสองมิติ แม้ว่าเมทริกซ์มักใช้กันทั่วไป แต่อาร์เรย์นั้นหายากมาก
ฟังก์ชันสำหรับสร้างอาร์เรย์คือ array()
การทดสอบว่าวัตถุเป็นเมทริกซ์หรืออาร์เรย์นั้นค่อนข้างง่าย เพียงใช้ฟังก์ชัน is.matrix() หรือ is.array()
การออกกำลังกาย
ต่อไปนี้คือคำถามบางข้อที่คุณสามารถลองตอบได้ในตอนนี้ เนื่องจากคุณได้รับความรู้เพียงพอเกี่ยวกับโครงสร้างข้อมูลใน R
- คุณสมบัติของ data frames คืออะไร?
- data frames สามารถมี 0 แถวหรือคอลัมน์ได้หรือไม่?
- Atomic Vectors ชนิดต่าง ๆ ใน R คืออะไร?
- อะตอมเวกเตอร์และรายการต่างกันอย่างไร
- สร้างเมทริกซ์ 4X3 ใน R
ส่งคำตอบของคุณถึงเราทางอีเมลหรือเขียนไว้ในความคิดเห็นด้านล่าง!

บทสรุป
ในการใช้ภาษา R อย่างเพียงพอ ความเข้าใจที่ดีเกี่ยวกับชนิดข้อมูล โครงสร้างข้อมูล และวิธีการทำงานเป็นสิ่งสำคัญ รายการเหล่านี้เป็นสมมติฐานของกิจกรรมทั้งหมดใน R ตัวอย่างเช่น ปัญหาทั่วไปที่พบโดยโปรแกรมเมอร์ส่วนใหญ่คือการแปลงวัตถุ ซึ่งสามารถกำจัดได้ด้วยความรู้ที่ดีเกี่ยวกับวัตถุ R จำเป็นต้องสังเกตว่าใน R ทุกอย่างเป็นอ็อบเจ็กต์และการดำเนินการได้ดำเนินการตามการเรียกใช้ฟังก์ชัน
โครงสร้างข้อมูลใน R สามารถแยกออกได้สองวิธี วิธีการหลักในการแยกแยะโครงสร้างข้อมูลออกโดยใช้มิติข้อมูลซึ่งสามารถเป็น 1, 2 หรือ n มิติได้ และเส้นทางที่ตามมาคือโดยธรรมชาติขององค์ประกอบที่สามารถเป็นเนื้อเดียวกันหรือต่างกันได้ ทุกองค์ประกอบในโครงสร้างที่เป็นเนื้อเดียวกันจะต้องเป็นแบบเดียวกันในขณะที่ในโครงสร้างที่ต่างกัน อนุญาตให้ใช้องค์ประกอบที่มีชนิดต่างๆ ได้
หลังจากที่ได้เรียนรู้พื้นฐานของโครงสร้างข้อมูลใน R แล้ว คุณจะพบว่าการเขียนโปรแกรมใน R ง่ายขึ้นมาก โครงสร้างข้อมูลเป็นพื้นฐานของ R โครงสร้างข้อมูลที่ใช้บ่อยที่สุดหกโครงสร้างได้กล่าวถึงข้างต้น สิ่งสำคัญคือต้องจดจำลักษณะที่แตกต่างกันของแต่ละประเภทและนำไปใช้เพื่อวิเคราะห์ข้อมูลและดำเนินการ
หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติมเกี่ยวกับ Big Data โปรดดูที่ PG Diploma in Software Development Specialization in Big Data program ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 7 กรณี ครอบคลุมภาษาและเครื่องมือในการเขียนโปรแกรม 14 รายการ เวิร์กช็อป ความช่วยเหลือด้านการเรียนรู้และจัดหางานอย่างเข้มงวดมากกว่า 400 ชั่วโมงกับบริษัทชั้นนำ
เรียนรู้ หลักสูตรการพัฒนาซอฟต์แวร์ ออนไลน์จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว