我需要将多行两列data.frame转换为命名字符向量.我data.frame会是这样的:
dd = data.frame(crit = c("a","b","c","d"),
name = c("Alpha", "Beta", "Caesar", "Doris")
)
Run Code Online (Sandbox Code Playgroud)
我真正需要的是:
whatiwant = c("a" = "Alpha",
"b" = "Beta",
"c" = "Caesar",
"d" = "Doris")
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种快速的方法来在以下格式的列表之间来回:
$`a`
[1] 1 2 3
$`b`
[1] 4 5 6
Run Code Online (Sandbox Code Playgroud)
来自/来自以下格式的data.frame:
name x
1 a 1
2 a 2
3 a 3
4 b 4
5 b 5
6 b 6
Run Code Online (Sandbox Code Playgroud)
(在这种情况下,不要真正关心列的名称是什么.)
这是上面以R格式使用的数据框:
df <- data.frame(name=c(rep("a",3),rep("b",3)), x=c(1:3,4:6))
Run Code Online (Sandbox Code Playgroud)
同样,我正在寻找两个独立的操作:一个将上面的data.frame转换为一个列表,另一个将它转换回data.frame.