Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to transfer dataframe `raw_df` to `list` row by row?

Tags:

list

dataframe

r

How to transfer data frame raw_df to list row by row? Desired output: wished_list

 raw_df <- data.frame(cat=c('a','b','c'),value=c('high','mid','low'))
 wished_list <- list(a='high',b='mid',c='low')
like image 481
anderwyang Avatar asked Oct 23 '25 15:10

anderwyang


2 Answers

One way to solve your probem:

split(raw_df$value, raw_df$cat)

$a
[1] "high"

$b
[1] "mid"

$c
[1] "low"
like image 145
B. Christian Kamgang Avatar answered Oct 25 '25 04:10

B. Christian Kamgang


One option would be:

as.list(setNames(raw_df$value, raw_df$cat))

$a
[1] "high"

$b
[1] "mid"

$c
[1] "low"
like image 42
tmfmnk Avatar answered Oct 25 '25 06:10

tmfmnk