假设我有一个数据框:
a <- c('zz','yy','xx','qq','pp')
b <- c('1','2','2','3','1')
ab <- data.frame(a,b)
这给出了:
a b
1 zz 1
2 yy 2
3 xx 2
4 qq 3
5 pp 1
我想把它变成R中的字典/嵌套列表。我可以想象在python中,结果看起来像这样:
ab_dict = {'1':["zz","pp"],'2':["yy","xx"],'3':["qq]}
如何在R中实现?我希望之后可以在for循环中迭代结果。
我在stackoverflow上找不到任何解决方案,因此,如果有人提出类似要求,我深表歉意!
答案 0 :(得分:1)
一个选择是用'b'split
{ab}列,并使用toJSON
中的jsonlite
library(jsonlite)
toJSON(split(as.character(ab$a), ab$b))
#{"1":["zz","pp"],"2":["yy","xx"],"3":["qq"]}