根据下面的示例在数据框的一列中将因子转换为数字

问题描述 投票:0回答:1
s   ['64.0', '2']   
a   ['63.0', '2']   
b   ['63.0', '1']   

如何如下将其转换为数据框:

s    64.0   
a    63.0
b    63.0   
r dataframe character numeric
1个回答
0
投票

我们可以使用parse_number

library(dplyr)
library(readr)
df2 <-  df1 %>%
          mutate(col2 = parse_number(as.character(col2)))
df2
#   col1 col2
#1    s   64
#2    a   63
#3    b   63

数据

df1 <- structure(list(col1 = c("s", "a", "b"), col2 = structure(3:1, .Label = c("['63.0', '1']", 
"['63.0', '2']", "['64.0', '2']"), class = "factor")), row.names = c(NA, 
-3L), class = "data.frame")
© www.soinside.com 2019 - 2024. All rights reserved.