วิธีการตั้งค่าคอลัมน์ data frame เป็นดัชนีใน r (พร้อมตัวอย่าง)
Dataframes ใน R ไม่มีคอลัมน์ “index” เหมือน dataframes ใน pandas
อย่างไรก็ตาม กรอบข้อมูลใน R มี ชื่อแถว ซึ่งทำหน้าที่เหมือนกับคอลัมน์ดัชนี
คุณสามารถใช้วิธีใดวิธีหนึ่งต่อไปนี้เพื่อตั้งค่าคอลัมน์กรอบข้อมูลที่มีอยู่เป็นชื่อแถวสำหรับกรอบข้อมูลใน R:
วิธีที่ 1: ตั้งชื่อแถวโดยใช้ Base R
#set specific column as row names rownames(df) <- df$my_column #remove original column from data frame df$my_column <- NULL
วิธีที่ 2: ตั้งชื่อแถวโดยใช้แพ็คเกจ Tidyverse
library (tidyverse) #set specific column as row names df <- df %>% column_to_rownames(., var = ' my_column ')
วิธีที่ 3: ตั้งชื่อแถวเมื่อนำเข้าข้อมูล
#import CSV file and specify column to use as row names df <- read. csv (' my_data.csv ', row.names =' my_column ')
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
ตัวอย่างที่ 1: กำหนดชื่อแถวโดยใช้ Base R
สมมติว่าเรามี data frame ต่อไปนี้ใน R:
#create data frame
df <- data. frame (ID=c(101, 102, 103, 104, 105),
points=c(99, 90, 86, 88, 95),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 28))
#view data frame
df
ID points assists rebounds
1 101 99 33 30
2 102 90 28 28
3 103 86 31 24
4 104 88 39 24
5 105 95 34 28
เราสามารถใช้รหัสต่อไปนี้เพื่อตั้งค่าคอลัมน์ ID เป็นชื่อแถว:
#set ID column as row names
rownames(df) <- df$ID
#remove original ID column from data frame
df$ID <- NULL
#view updated data frame
df
points assists rebounds
101 99 33 30
102 90 28 28
103 86 31 24
104 88 39 24
105 95 34 28
ตอนนี้ค่าในคอลัมน์ ID จะเป็นชื่อแถวของกรอบข้อมูล
ตัวอย่างที่ 2: ตั้งชื่อแถวโดยใช้แพ็คเกจ Tidyverse
รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน column_to_rownames() ของแพ็คเกจ Spiceverse เพื่อตั้งชื่อแถวให้เท่ากับคอลัมน์ ID ในกรอบข้อมูล:
library (tidyverse)
#create data frame
df <- data. frame (ID=c(101, 102, 103, 104, 105),
points=c(99, 90, 86, 88, 95),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 28))
#set ID column as row names
df <- df %>% column_to_rownames(., var = ' ID ')
#view updated data frame
df
points assists rebounds
101 99 33 30
102 90 28 28
103 86 31 24
104 88 39 24
105 95 34 28
โปรดทราบว่าผลลัพธ์นี้ตรงกับผลลัพธ์ของตัวอย่างก่อนหน้า
ตัวอย่างที่ 3: ตั้งชื่อแถวเมื่อนำเข้าข้อมูล
สมมติว่าเรามีไฟล์ CSV ต่อไปนี้ชื่อ my_data.csv :
เราสามารถใช้โค้ดต่อไปนี้เพื่อนำเข้าไฟล์ CSV และตั้งชื่อแถวให้เท่ากับคอลัมน์ ID ระหว่างการนำเข้า:
#import CSV file and specify ID column to use as row names df <- read. csv (' my_data.csv ', row.names =' ID ') #view data frame df points assists rebounds 101 99 33 30 102 90 28 28 103 86 31 24 104 88 39 24 105 95 34 28
โปรดทราบว่าค่าในคอลัมน์ ID จะถูกใช้เป็นชื่อแถวในกรอบข้อมูล
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:
วิธีลบแถวออกจาก data frame ใน R ตามเงื่อนไข
วิธีแทนที่ค่าใน data frame ใน R
วิธีลบคอลัมน์ออกจาก data frame ใน R