โครงสร้างข้อมูล 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 อย่างมาก

  1. ปัจจัย

พูดง่ายๆ ปัจจัยคือประเภทของเวกเตอร์ที่สามารถจัดเก็บได้เฉพาะค่าที่กำหนดไว้ล่วงหน้าเท่านั้น มันถูกใช้เพื่อจัดเก็บข้อมูลหมวดหมู่เป็นหลัก จัดหมวดหมู่ค่าคอลัมน์ เช่น "ชาย" "หญิง" "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

  1. คุณสมบัติของ data frames คืออะไร?
  2. data frames สามารถมี 0 แถวหรือคอลัมน์ได้หรือไม่?
  3. Atomic Vectors ชนิดต่าง ๆ ใน R คืออะไร?
  4. อะตอมเวกเตอร์และรายการต่างกันอย่างไร
  5. สร้างเมทริกซ์ 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 สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว

พัฒนาตัวเองและเตรียมพร้อมสำหรับอนาคต

โปรแกรมประกาศนียบัตรขั้นสูงด้าน Big Data จาก IIIT Bangalore