วิธีการตั้งค่าคอลัมน์ 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

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *