R - ประเภทข้อมูล
โดยทั่วไปในขณะที่ทำการเขียนโปรแกรมด้วยภาษาการเขียนโปรแกรมใด ๆ คุณจำเป็นต้องใช้ตัวแปรต่างๆเพื่อจัดเก็บข้อมูลต่างๆ ตัวแปรเป็นเพียงตำแหน่งหน่วยความจำที่สงวนไว้เพื่อเก็บค่า ซึ่งหมายความว่าเมื่อคุณสร้างตัวแปรคุณจะสงวนพื้นที่ในหน่วยความจำไว้
คุณอาจต้องการจัดเก็บข้อมูลประเภทข้อมูลต่างๆเช่นอักขระอักขระแบบกว้างจำนวนเต็มจุดลอยตัวจุดลอยตัวคู่บูลีนเป็นต้นระบบปฏิบัติการจะจัดสรรหน่วยความจำและตัดสินใจว่าจะจัดเก็บข้อมูลใดใน หน่วยความจำที่สงวนไว้
ตรงกันข้ามกับภาษาโปรแกรมอื่น ๆ เช่น C และ java ใน R ตัวแปรจะไม่ได้รับการประกาศเป็นข้อมูลบางประเภท ตัวแปรถูกกำหนดด้วย R-Objects และชนิดข้อมูลของ R-object จะกลายเป็นชนิดข้อมูลของตัวแปร วัตถุ R มีหลายประเภท คนที่ใช้บ่อย ได้แก่ -
- Vectors
- Lists
- Matrices
- Arrays
- Factors
- เฟรมข้อมูล
สิ่งที่ง่ายที่สุดของวัตถุเหล่านี้คือ vector objectและมีข้อมูลหกประเภทของเวกเตอร์อะตอมเหล่านี้เรียกอีกอย่างว่าหกคลาสของเวกเตอร์ R-Objects อื่น ๆ ถูกสร้างขึ้นจากเวกเตอร์อะตอม
ประเภทข้อมูล | ตัวอย่าง | ยืนยัน |
---|---|---|
ตรรกะ | ถูกผิด |
มันให้ผลลัพธ์ดังต่อไปนี้ -
|
ตัวเลข | 12.3, 5, 999 |
มันให้ผลลัพธ์ดังต่อไปนี้ -
|
จำนวนเต็ม | 2L, 34L, 0L |
มันให้ผลลัพธ์ดังต่อไปนี้ -
|
ซับซ้อน | 3 + 2i |
มันให้ผลลัพธ์ดังต่อไปนี้ -
|
ตัวละคร | 'a', '"ดี", "TRUE", '23 .4' |
มันให้ผลลัพธ์ดังต่อไปนี้ -
|
ดิบ | "สวัสดี" ถูกจัดเก็บเป็น 48 65 6c 6c 6f |
มันให้ผลลัพธ์ดังต่อไปนี้ -
|
ในการเขียนโปรแกรม R ชนิดข้อมูลพื้นฐานคือ R-objects ที่เรียกว่า vectorsซึ่งมีองค์ประกอบของคลาสต่างๆดังที่แสดงไว้ด้านบน โปรดทราบใน R จำนวนชั้นเรียนไม่ได้ จำกัด เฉพาะหกประเภทข้างต้น ตัวอย่างเช่นเราสามารถใช้เวกเตอร์อะตอมจำนวนมากและสร้างอาร์เรย์ซึ่งคลาสจะกลายเป็นอาร์เรย์
เวกเตอร์
เมื่อคุณต้องการสร้างเวกเตอร์ที่มีองค์ประกอบมากกว่าหนึ่งองค์ประกอบคุณควรใช้ c() ฟังก์ชันซึ่งหมายถึงการรวมองค์ประกอบเป็นเวกเตอร์
# Create a vector.
apple <- c('red','green',"yellow")
print(apple)
# Get the class of the vector.
print(class(apple))
เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
[1] "red" "green" "yellow"
[1] "character"
รายการ
รายการคือวัตถุ R ซึ่งสามารถมีองค์ประกอบหลายประเภทอยู่ภายในเช่นเวกเตอร์ฟังก์ชันและแม้แต่รายการอื่น ๆ ภายใน
# Create a list.
list1 <- list(c(2,5,3),21.3,sin)
# Print the list.
print(list1)
เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
[[1]]
[1] 2 5 3
[[2]]
[1] 21.3
[[3]]
function (x) .Primitive("sin")
เมทริกซ์
เมทริกซ์คือชุดข้อมูลสี่เหลี่ยมสองมิติ สามารถสร้างได้โดยใช้อินพุตเวกเตอร์ไปยังฟังก์ชันเมทริกซ์
# Create a matrix.
M = matrix( c('a','a','b','c','b','a'), nrow = 2, ncol = 3, byrow = TRUE)
print(M)
เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
[,1] [,2] [,3]
[1,] "a" "a" "b"
[2,] "c" "b" "a"
อาร์เรย์
ในขณะที่เมทริกซ์ถูก จำกัด ไว้ที่สองมิติอาร์เรย์อาจมีขนาดเท่าใดก็ได้ ฟังก์ชันอาร์เรย์รับแอตทริบิวต์สลัวซึ่งสร้างจำนวนมิติที่ต้องการ ในตัวอย่างด้านล่างเราสร้างอาร์เรย์ที่มีสององค์ประกอบซึ่งแต่ละเมทริกซ์ 3x3
# Create an array.
a <- array(c('green','yellow'),dim = c(3,3,2))
print(a)
เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
, , 1
[,1] [,2] [,3]
[1,] "green" "yellow" "green"
[2,] "yellow" "green" "yellow"
[3,] "green" "yellow" "green"
, , 2
[,1] [,2] [,3]
[1,] "yellow" "green" "yellow"
[2,] "green" "yellow" "green"
[3,] "yellow" "green" "yellow"
ปัจจัย
ปัจจัยคือวัตถุ r ที่สร้างขึ้นโดยใช้เวกเตอร์ จะจัดเก็บเวกเตอร์พร้อมกับค่าที่แตกต่างกันขององค์ประกอบในเวกเตอร์เป็นป้ายกำกับ ป้ายกำกับเป็นอักขระเสมอไม่ว่าจะเป็นตัวเลขหรืออักขระหรือบูลีนเป็นต้นในเวกเตอร์อินพุต มีประโยชน์ในการสร้างแบบจำลองทางสถิติ
ปัจจัยถูกสร้างขึ้นโดยใช้ไฟล์ factor()ฟังก์ชัน nlevels ฟังก์ชันให้การนับระดับ
# Create a vector.
apple_colors <- c('green','green','yellow','red','red','red','green')
# Create a factor object.
factor_apple <- factor(apple_colors)
# Print the factor.
print(factor_apple)
print(nlevels(factor_apple))
เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
[1] green green yellow red red red green
Levels: green red yellow
[1] 3
เฟรมข้อมูล
เฟรมข้อมูลคือออบเจ็กต์ข้อมูลแบบตาราง ซึ่งแตกต่างจากเมทริกซ์ในกรอบข้อมูลแต่ละคอลัมน์สามารถมีโหมดข้อมูลที่แตกต่างกันได้ คอลัมน์แรกสามารถเป็นตัวเลขในขณะที่คอลัมน์ที่สองสามารถเป็นอักขระและคอลัมน์ที่สามสามารถเป็นตรรกะได้ เป็นรายการเวกเตอร์ที่มีความยาวเท่ากัน
เฟรมข้อมูลถูกสร้างขึ้นโดยใช้ data.frame() ฟังก์ชัน
# Create the data frame.
BMI <- data.frame(
gender = c("Male", "Male","Female"),
height = c(152, 171.5, 165),
weight = c(81,93, 78),
Age = c(42,38,26)
)
print(BMI)
เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
gender height weight Age
1 Male 152.0 81 42
2 Male 171.5 93 38
3 Female 165.0 78 26