作者apple2 (apple)
看板Python
标题[问题] 字典转dataframe
时间Fri Jul 12 21:15:42 2019
请问各位大大,
我用python 跑apriori 算法:
程式回传关联规则的资料结构长这样:
{(1,): ((3,), 1.0), (2,): ((5,), 1.0), (5,): ((2,), 1.0), (2, 3): ((5,),
1.0), (3, 5): ((2,), 1.0)}
意思是:
1->3 信心度:1
2->5 信心度:1
5->2 信心度:1
2,3 ->5 信心度:1
3,5->2 信心度:1
{(1,): ((3,), 1.0), (2,): ((5,), 1.0), (5,): ((2,), 1.0), (2, 3): ((5,),
1.0), (3, 5): ((2,), 1.0)}
请问有什麽方法可以让上面字典的资料结构变成dataframe 如下:
前件 後件 信心度
1 3 1
2 5 1
5 2 1
2,3 5 1
3,5 2 1
谢谢各位!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.193.7.161 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1562937348.A.790.html
1F:→ x264: _data = [[key[0], val[0][0], val[1]] for key, val in dat 07/13 00:24
2F:→ x264: a.items()] 07/13 00:24
3F:→ x264: cols = ["前件", "後件", "信心度"] 07/13 00:24
4F:→ x264: df = df.DataFrame(_data, columns=cols) 07/13 00:25
5F:→ x264: df = pd.DataFrame(_data, columns=cols) 07/13 00:25
6F:→ x264: df=df那行打错看下面那行,简单来说就是用list comprehensio 07/13 00:27
7F:→ x264: n取出你要的资料让每笔资料变成一个list(到时候会变成datafr 07/13 00:27
8F:→ x264: ame的一个row) 再来cols就是照你要的栏位名称而已,最後再整 07/13 00:27
9F:→ x264: 个丢到dataframe里面就行,没实际测过但是应该可以用 07/13 00:27
10F:→ apple2: 谢谢版友回覆! 07/13 13:29