วิธีแปลงอักขระเป็นตัวเลขใน r (พร้อมตัวอย่าง)


เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแปลงเวกเตอร์อักขระเป็นเวกเตอร์ตัวเลขใน R:

 numeric_vector <- as. numeric (character_vector)

บทช่วยสอนนี้มีตัวอย่างการใช้งานฟังก์ชันนี้ในทางปฏิบัติหลายตัวอย่าง

ตัวอย่างที่ 1: แปลงเวกเตอร์อักขระเป็นตัวเลข

รหัสต่อไปนี้แสดงวิธีการแปลงเวกเตอร์อักขระเป็นเวกเตอร์ตัวเลข:

 #create character vector
tanks <- c('12', '14', '19', '22', '26')

#convert character vector to numeric vector
numbers <- as. numeric (tanks)

#view digital vector
numbers

[1] 12 14 19 22 26

#confirm class of numerical vector
class (numbers)

[1] "digital"

ตัวอย่างที่ 2: แปลงคอลัมน์อักขระเป็นตัวเลข

รหัสต่อไปนี้แสดงวิธีการแปลงคอลัมน์เฉพาะใน data frame จากอักขระเป็นตัวเลข:

 #create data frame
df <- data. frame (a = c('12', '14', '19', '22', '26'),
                 b = c(28, 34, 35, 36, 40))

#convert column 'a' from character to numeric
df$a <- as. numeric (df$a)

#view new data frame
df

   ab
1 12 28
2 14 34
3 19 35
4 22 36
5 26 40

#confirm class of numerical vector
class (df$a)

[1] "digital"

ตัวอย่างที่ 3: แปลงหลายคอลัมน์จากอักขระเป็นตัวเลข

รหัสต่อไปนี้แสดงวิธีการแปลงคอลัมน์อักขระทั้งหมดในกรอบข้อมูลอักขระเป็นตัวเลข:

 #create data frame
df <- data. frame (a = c('12', '14', '19', '22', '26'),
                 b = c('28', '34', '35', '36', '40'),
                 c = as. factor (c(1, 2, 3, 4, 5)),
                 d = c(45, 56, 54, 57, 59))

#display classes of each column
sapply(df, class)

          abcd
"character" "character" "factor" "numeric" 

#identify all character columns
chars <- sapply (df, is. character )

#convert all character columns to numeric
df[, chars] <- as. data . frame ( apply (df[, chars], 2, as.numeric ))

#display classes of each column
sapply (df, class)

        abcd
"numeric" "numeric" "factor" "numeric"

รหัสนี้ทำการเปลี่ยนแปลงต่อไปนี้กับคอลัมน์กรอบข้อมูล:

  • คอลัมน์ a: จากอักขระไปจนถึงดิจิทัล
  • คอลัมน์ b: จากตัวละครสู่ดิจิทัล
  • คอลัมน์ c: ไม่เปลี่ยนแปลง (เนื่องจากเป็นปัจจัย)
  • คอลัมน์ d: ไม่เปลี่ยนแปลง (เนื่องจากเป็นตัวเลขอยู่แล้ว)

การใช้ฟังก์ชัน Apply() และ sapply() ทำให้เราสามารถแปลงเฉพาะคอลัมน์อักขระเป็นคอลัมน์ตัวเลข โดยไม่เปลี่ยนแปลงคอลัมน์อื่นๆ ทั้งหมด

แหล่งข้อมูลเพิ่มเติม

วิธีแปลงตัวเลขเป็นอักขระใน R
วิธีแปลงอักขระเป็นปัจจัยใน R
วิธีแปลงปัจจัยเป็นอักขระใน R
วิธีแปลงอักขระเป็นการประทับเวลาใน R

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

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