推荐系统案例
library(tidyverse)
library(readxl)
library(arules)
library(arulesViz)
library(igraph)
library(recommenderlab)
library(visNetwork)
<- read_csv("sheet1.csv") %>%
tang rename(药 = "hebing")
::datatable(tang, options = list(scrollX = T)) DT
<- tang %>%
tang1 mutate(n = 1) %>%
group_by(症状) %>%
mutate(index = n()) %>%
pivot_wider(names_from = 药, values_from = n, values_fill = 0, values_fn = sum) %>%
select(-index) %>%
column_to_rownames("症状")
::datatable(tang1, options = list(scrollX = T)) DT
<- as.matrix(tang1)
tang2 <- as(tang2, "transactions")
tang3 inspect(tang3[1:5])
## items transactionID
## [1] {怀山药,
## 元参,
## 苍术,
## 丹参,
## 葛根,
## 枸杞子,
## 熟地,
## 砂仁,
## 鸡内金,
## 杜仲,
## 川断,
## 仙鹤草,
## 茯苓,
## 桔梗,
## 甘草,
## 薄荷,
## 白芷,
## 瓜蒌,
## 风化硝,
## 苍耳子 辛夷,
## 白术,
## 党参,
## 仙茅,
## 当归 川芎,
## 赤芍 白芍,
## 白芍 桂枝,
## 青风藤,
## 穿山龙,
## 山芋肉,
## 炒谷麦芽,
## 首乌,
## 白蒺藜,
## 苍术 黄柏,
## 旋覆花 代赭石,
## 生石膏,
## 生黄芪,
## 生地,
## 生枣仁,
## 夜交藤,
## 桑白皮 地骨皮,
## 黄芩 黄连,
## 黄芩 半夏,
## 半夏 夏枯草,
## 当归,
## 白花蛇舌草,
## 威灵仙,
## 乌梅,
## 枣仁,
## 沙参,
## 白芍 柴胡,
## 远志,
## 菖蒲,
## 黄芪,
## 杏仁,
## 薏米仁,
## 叩仁,
## 厚朴,
## 半夏,
## 竹叶,
## 滑石,
## 通草,
## 炒防风,
## 冬瓜子 冬葵子,
## 炒枣仁,
## 灵磁石,
## 生山楂,
## 决明子,
## 桑叶 菊花,
## 谷精草 密蒙花,
## 茯苓 茯神,
## 炒白术,
## 炒苍术,
## 木香,
## 益母草,
## 炒三仙,
## 桃仁 红花,
## 吴芋,
## 木瓜,
## 桑寄生,
## 桑枝,
## 紫石英 紫贝齿,
## 红花,
## 五味子,
## 麦冬,
## 太子参,
## 卧胆草,
## 柏子仁,
## 降香,
## 制乳没,
## 神曲,
## 山药,
## 桑螵蛸,
## 葛根 丹参,
## 天冬 麦冬,
## 附片,
## 怀牛膝,
## 赤芍,
## 银花,
## 连翘,
## 栀子,
## 白茅根 芦根,
## 生白术,
## 枳实,
## 生龙牡,
## 姜黄,
## 鸡血藤,
## 洛石藤,
## 五味子 五倍子,
## 赤白芍,
## 钩藤,
## 丹皮,
## 生甘草,
## 络石藤,
## 桑寄生 鸡血藤,
## 山萸肉,
## 泽泻,
## 生谷麦芽,
## ①知母,
## 补骨脂,
## 肉豆叩,
## 桃仁,
## 穿山甲,
## 鲜茅,
## 仙灵脾,
## 生黄芩,
## 全蝎 蜈蚣,
## 天花粉,
## 茜草,
## 地龙,
## 晚蚕砂,
## 皂角子,
## 猪苓,
## 鹿角霜,
## 甘松,
## 山芍,
## 枸杞,
## 菊花,
## 生泽泻,
## 苍术 白术,
## 茺蔚子 夏枯草,
## 磁石,
## 石菖蒲,
## ?五灵脂,
## ?制附片,
## 干姜,
## ?黄柏,
## 车前子 车前草,
## 紫草,
## 浮萍,
## 炒芥穗,
## 天麦冬,
## 夜之藤,
## 黄柏,
## 蒲公英,
## 紫地丁,
## 生牡蛎,
## 夏枯草,
## 浙贝,
## 金银花 连翘,
## 生白芍,
## 枳壳,
## 山芋,
## h菖蒲,
## 生熟地,
## 地肤子,
## 何首乌,
## 羌活,
## 蝉衣,
## 蛇蜕,
## 白头翁,
## 手脚麻,
## 钩藤 桑寄生,
## 生内金,
## 女贞子,
## 菟丝子,
## 苍术 桂枝,
## 苦参,
## 炒山药,
## 附子,
## 白芍 甘草,
## 生石决明,
## 土茯苓,
## 萆薢,
## 车前子,
## 蔻仁,
## 沉香,
## 高良姜 香附,
## 骨碎补,
## 钩藤 天麻,
## 葶苈子,
## 大枣白芥子,
## 莱菔子,
## 五味子 细辛,
## 生芪,
## 黄精,
## 玉竹,
## 枳实 竹茹,
## 半夏 竹茹,
## 藿香 佩兰,
## 薤白,
## 生山药,
## 炮姜,
## 黄连,
## 炒小茴,
## 云苓,
## 陈皮,
## 鱼腥草,
## 丹参 檀香,
## 远志 石菖蒲,
## 升麻 柴胡,
## 薏仁,
## 枸杞子 菊花,
## 知母 黄柏,
## ①柴胡,
## 瓜蒌 枳实,
## 海风藤,
## 蝉蜕,
## 冬瓜子,
## 白芷 僵蚕,
## 白果,
## 葛根 升麻,
## 僵蚕,
## 细辛} 舌下瘀
## [2] {怀山药,
## 元参,
## 苍术,
## 丹参,
## 葛根,
## 枸杞子,
## 熟地,
## 砂仁,
## 鸡内金,
## 杜仲,
## 川断,
## 仙鹤草,
## 旋覆花,
## 海浮石,
## 青黛,
## 蛤粉,
## 半夏曲,
## 橘红,
## 茯苓,
## 桔梗,
## 甘草,
## 薄荷,
## 白芷,
## 瓜蒌,
## 风化硝,
## 苍耳子 辛夷,
## 党参,
## 仙茅,
## 当归 川芎,
## 山芋肉,
## 旋覆花 代赭石,
## 生黄芪,
## 生地,
## 生枣仁,
## 夜交藤,
## 黄芩 黄连,
## 黄芩 半夏,
## 沙参,
## 丹参 黄连,
## 厚朴,
## 炒枣仁,
## 生山楂,
## 炒苍术,
## 木香,
## 益母草,
## 桃仁 红花,
## 桑寄生,
## 桑枝,
## 红花,
## 五味子,
## 太子参,
## 卧胆草,
## 柏子仁,
## 制乳没,
## 神曲,
## 山药,
## 天冬 麦冬,
## 桂枝 茯苓,
## 生白术,
## 鸡血藤,
## 赤白芍,
## 丹皮,
## 生甘草,
## 山萸肉,
## 泽泻,
## 乌药,
## 香附,
## 风华硝,
## 橘核 荔枝核,
## 生谷麦芽,
## 穿山甲,
## 鲜茅,
## 仙灵脾,
## 生黄芩,
## 全蝎 蜈蚣,
## 车前子 车前草,
## 山芋,
## 生熟地,
## 羌活,
## 生内金,
## 女贞子,
## 菟丝子,
## 苍术 桂枝,
## 苦参,
## 炒山药,
## 枳实 竹茹,
## 半夏 竹茹,
## 薤白,
## 枸杞子 菊花,
## 滑石 甘草} 舌红
## [3] {怀山药,
## 元参,
## 苍术,
## 丹参,
## 葛根,
## 枸杞子,
## 熟地,
## 砂仁,
## 鸡内金,
## 杜仲,
## 川断,
## 仙鹤草,
## 旋覆花,
## 海浮石,
## 青黛,
## 蛤粉,
## 半夏曲,
## 橘红,
## 茯苓,
## 桔梗,
## 甘草,
## 薄荷,
## 白芷,
## 瓜蒌,
## 风化硝,
## 苍耳子 辛夷,
## 白术,
## 党参,
## 仙茅,
## 当归 川芎,
## 赤芍 白芍,
## 白芍 桂枝,
## 青风藤,
## 穿山龙,
## 山芋肉,
## 炒谷麦芽,
## 首乌,
## 白蒺藜,
## 苍术 黄柏,
## 旋覆花 代赭石,
## 生石膏,
## 知母,
## 生黄芪,
## 生地,
## 生枣仁,
## 夜交藤,
## 桑白皮 地骨皮,
## 黄芩 黄连,
## 黄芩 半夏,
## 当归,
## 白花蛇舌草,
## 威灵仙,
## 乌梅,
## 枣仁,
## 沙参,
## 白芍 柴胡,
## 远志,
## 菖蒲,
## 黄芪,
## 槐花,
## 丹参 黄连,
## 杏仁,
## 薏米仁,
## 叩仁,
## 厚朴,
## 半夏,
## 竹叶,
## 滑石,
## 通草,
## 炒防风,
## 冬瓜子 冬葵子,
## 炒枣仁,
## 灵磁石,
## 生山楂,
## 决明子,
## 谷精草 密蒙花,
## 茯苓 茯神,
## 炒白术,
## 炒苍术,
## 木香,
## 益母草,
## 炒三仙,
## 桃仁 红花,
## 吴芋,
## 木瓜,
## 桑寄生,
## 桑枝,
## 紫石英 紫贝齿,
## 红花,
## 五味子,
## 麦冬,
## 太子参,
## 卧胆草,
## 柏子仁,
## 降香,
## 制乳没,
## 神曲,
## 山药,
## 桑螵蛸,
## 葛根 丹参,
## 天冬 麦冬,
## 附片,
## 怀牛膝,
## 炙甘草,
## 桂枝 茯苓,
## 赤芍,
## 柴胡,
## 银花,
## 连翘,
## 栀子,
## 豆豉,
## 白茅根 芦根,
## 生石膏 寒水石,
## 生白术,
## 枳实,
## 生龙牡,
## 鸡血藤,
## 五味子 五倍子,
## 赤白芍,
## 桂枝,
## 钩藤,
## 丹皮,
## 生甘草,
## 络石藤,
## 桑寄生 鸡血藤,
## 泽泻,
## 香附,
## 砂叩仁,
## 守宫,
## 炒枳实,
## 生谷麦芽,
## 石斛,
## 半枝莲 半边莲,
## 补骨脂,
## 肉豆叩,
## 桃仁,
## 仙灵脾,
## 天花粉,
## 茜草,
## ①生黄芪,
## 地龙,
## 丝瓜络,
## 黑芝麻,
## 川芎,
## 晚蚕砂,
## 皂角子,
## 猪苓,
## 鹿角霜,
## 甘松,
## 山芍,
## 枸杞,
## 菊花,
## 生泽泻,
## 苍术 白术,
## 茺蔚子 夏枯草,
## 磁石,
## 茯神,
## 黄芪 山药,
## 石菖蒲,
## ?五灵脂,
## ?制附片,
## 干姜,
## ?黄柏,
## 车前子 车前草,
## 紫草,
## 浮萍,
## 炒芥穗,
## 天麦冬,
## 夜之藤,
## 黄柏,
## 木香 槟榔,
## 木香 黄连,
## 蒲公英,
## 紫地丁,
## 生白芍,
## 枳壳,
## 山芋,
## 生熟地,
## 何首乌,
## 蛇蜕,
## 白头翁,
## 生内金,
## 女贞子,
## 菟丝子,
## 苍术 桂枝,
## 卧蛋草,
## 黄芩,
## 苦参,
## 炒山药,
## 白芍 甘草,
## 生石决明,
## 山羊角,
## 土茯苓,
## 萆薢,
## 车前子,
## 蔻仁,
## 沉香,
## 高良姜 香附,
## 骨碎补,
## 钩藤 天麻,
## 牛膝,
## 肉桂,
## 黄连 细辛,
## 葶苈子,
## 大枣白芥子,
## 莱菔子,
## 五味子 细辛,
## 黄精,
## 玉竹,
## 乌梅 五味子,
## 藿香 佩兰,
## 薤白,
## 生山药,
## 黄连,
## 炒小茴,
## 云苓,
## 乌蛇,
## 陈皮,
## 升麻 柴胡,
## 升麻 桔梗,
## 枳实 枳壳,
## 薏仁,
## 知母 黄柏,
## 炒陈皮,
## 干姜 黄连,
## ①柴胡,
## 生茶花,
## 砂仁(后下),
## 郁金,
## 白术 茯苓,
## 瓜蒌 枳实,
## 海风藤,
## 桑叶,
## 蝉蜕,
## 柴胡 黄芩,
## 冬瓜子,
## 白芷 僵蚕,
## 僵蚕,
## 细辛} 苔白
## [4] {怀山药,
## 元参,
## 苍术,
## 丹参,
## 葛根,
## 枸杞子,
## 熟地,
## 砂仁,
## 鸡内金,
## 杜仲,
## 川断,
## 仙鹤草,
## 半夏曲,
## 茯苓,
## 薄荷,
## 白芷,
## 瓜蒌,
## 风化硝,
## 苍耳子 辛夷,
## 白术,
## 党参,
## 仙茅,
## 当归 川芎,
## 赤芍 白芍,
## 白芍 桂枝,
## 青风藤,
## 穿山龙,
## 山芋肉,
## 炒谷麦芽,
## 首乌,
## 白蒺藜,
## 苍术 黄柏,
## 旋覆花 代赭石,
## 生石膏,
## 知母,
## 生黄芪,
## 芦根,
## 白茅根,
## 生地,
## 生枣仁,
## 夜交藤,
## 桑白皮 地骨皮,
## 黄芩 黄连,
## 黄芩 半夏,
## 半夏 夏枯草,
## 当归,
## 白花蛇舌草,
## 威灵仙,
## 乌梅,
## 枣仁,
## 沙参,
## 白芍 柴胡,
## 远志,
## 菖蒲,
## 黄芪,
## 槐花,
## 丹参 黄连,
## 杏仁,
## 炒防风,
## 炒枣仁,
## 炒远志,
## 灵磁石,
## 生山楂,
## 决明子,
## 桑叶 菊花,
## 谷精草 密蒙花,
## 茯苓 茯神,
## 炒白术,
## 炒苍术,
## 木香,
## 益母草,
## 炒三仙,
## 桃仁 红花,
## 吴芋,
## 木瓜,
## 桑寄生,
## 桑枝,
## 紫石英 紫贝齿,
## 五味子,
## 麦冬,
## 太子参,
## 柏子仁,
## 制乳没,
## 神曲,
## 山药,
## 桑螵蛸,
## 葛根 丹参,
## 天冬 麦冬,
## 附片,
## 怀牛膝,
## 炙甘草,
## 桂枝 茯苓,
## 赤芍,
## 柴胡,
## 栀子,
## 生白术,
## 枳实,
## 生龙牡,
## 姜黄,
## 鸡血藤,
## 洛石藤,
## 五味子 五倍子,
## 赤白芍,
## 钩藤,
## 丹皮,
## 生甘草,
## 络石藤,
## 桑寄生 鸡血藤,
## 山萸肉,
## 泽泻,
## 乌药,
## 香附,
## 风华硝,
## 橘核 荔枝核,
## 生谷麦芽,
## 穿山甲,
## 鲜茅,
## 仙灵脾,
## 生黄芩,
## 全蝎 蜈蚣,
## 天花粉,
## ①生黄芪,
## 地龙,
## 丝瓜络,
## 晚蚕砂,
## 皂角子,
## 山芍,
## 枸杞,
## 菊花,
## 生泽泻,
## 苍术 白术,
## 茺蔚子 夏枯草,
## 石菖蒲,
## 车前子 车前草,
## 紫草,
## 浮萍,
## 炒芥穗,
## 黄柏,
## 木香 槟榔,
## 木香 黄连,
## 蒲公英,
## 紫地丁,
## 生白芍,
## 枳壳,
## 山芋,
## 生熟地,
## 地肤子,
## 何首乌,
## 蝉衣,
## 蛇蜕,
## 生内金,
## 女贞子,
## 菟丝子,
## 苍术 桂枝,
## 炒山药,
## 白芍 甘草,
## 生石决明,
## 山羊角,
## 土茯苓,
## 萆薢,
## 车前子,
## 白薇,
## 风化消,
## 钩藤 天麻,
## 葶苈子,
## 莱菔子,
## 黄精,
## 玉竹,
## 乌梅 五味子,
## 藿香 佩兰,
## 薤白,
## 羌独活,
## 生山药,
## 炮姜,
## 云苓,
## 鱼腥草,
## 白芥子,
## 薏仁,
## 瓜蒌 枳实,
## 海风藤,
## 制附片,
## 冬瓜子,
## 白芷 僵蚕,
## 滑石 甘草} 血糖
## [5] {元参,
## 苍术,
## 丹参,
## 葛根,
## 枸杞子,
## 熟地,
## 砂仁,
## 鸡内金,
## 杜仲,
## 川断,
## 仙鹤草,
## 旋覆花,
## 海浮石,
## 青黛,
## 蛤粉,
## 半夏曲,
## 橘红,
## 茯苓,
## 桔梗,
## 甘草,
## 薄荷,
## 白芷,
## 瓜蒌,
## 风化硝,
## 苍耳子 辛夷,
## 白术,
## 党参,
## 仙茅,
## 赤芍 白芍,
## 白芍 桂枝,
## 山芋肉,
## 炒谷麦芽,
## 白蒺藜,
## 苍术 黄柏,
## 旋覆花 代赭石,
## 生石膏,
## 生黄芪,
## 生地,
## 生枣仁,
## 夜交藤,
## 桑白皮 地骨皮,
## 黄芩 黄连,
## 黄芩 半夏,
## 当归,
## 威灵仙,
## 枣仁,
## 沙参,
## 远志,
## 菖蒲,
## 黄芪,
## 丹参 黄连,
## 杏仁,
## 厚朴,
## 炒防风,
## 炒枣仁,
## 灵磁石,
## 生山楂,
## 决明子,
## 桑叶 菊花,
## 谷精草 密蒙花,
## 茯苓 茯神,
## 炒白术,
## 炒苍术,
## 桃仁 红花,
## 吴芋,
## 桑寄生,
## 桑枝,
## 紫石英 紫贝齿,
## 红花,
## 五味子,
## 麦冬,
## 太子参,
## 制乳没,
## 神曲,
## 山药,
## 桑螵蛸,
## 葛根 丹参,
## 天冬 麦冬,
## 附片,
## 怀牛膝,
## 赤芍,
## 柴胡,
## 银花,
## 连翘,
## 栀子,
## 豆豉,
## 白茅根 芦根,
## 生白术,
## 枳实,
## 姜黄,
## 鸡血藤,
## 赤白芍,
## 桂枝,
## 钩藤,
## 丹皮,
## 生甘草,
## 络石藤,
## 桑寄生 鸡血藤,
## 山萸肉,
## 泽泻,
## 乌药,
## 香附,
## 风华硝,
## 橘核 荔枝核,
## 炒枳实,
## 生谷麦芽,
## ①知母,
## 补骨脂,
## 肉豆叩,
## 桃仁,
## 仙灵脾,
## 天花粉,
## 茜草,
## 地龙,
## 黑芝麻,
## 川芎,
## 晚蚕砂,
## 皂角子,
## 菊花,
## 磁石,
## 茯神,
## 黄芪 山药,
## 干姜,
## 紫草,
## 浮萍,
## 炒芥穗,
## 天麦冬,
## 夜之藤,
## 蒲公英,
## 紫地丁,
## 生白芍,
## 枳壳,
## 山芋,
## h菖蒲,
## 何首乌,
## 蝉衣,
## 蛇蜕,
## 白头翁,
## 手脚麻,
## 钩藤 桑寄生,
## 生内金,
## 女贞子,
## 菟丝子,
## 苍术 桂枝,
## 附子,
## 白芍 甘草,
## 生石决明,
## 土茯苓,
## 萆薢,
## 车前子,
## 风化消,
## 蔻仁,
## 沉香,
## 高良姜 香附,
## 枳实 竹茹,
## 半夏 竹茹,
## 藿香 佩兰,
## 薤白,
## 羌独活,
## 黄连,
## 炒小茴,
## 鱼腥草,
## 薏仁,
## ①柴胡,
## 瓜蒌 枳实,
## 海风藤} 大便
summary(tang3)
## transactions as itemMatrix in sparse format with
## 140 rows (elements/itemsets/transactions) and
## 293 columns (items) and a density of 0.136982
##
## most frequent items:
## 葛根 丹参 生地 生黄芪 元参 (Other)
## 102 100 86 83 81 5167
##
## element (itemset/transaction) length distribution:
## sizes
## 7 9 10 12 13 14 15 16 17 18 19 21 22 23 24 25 26 28 29 30
## 4 9 5 7 7 6 3 8 10 4 1 3 3 2 4 3 3 3 3 4
## 31 32 34 36 38 40 43 48 49 51 53 57 59 60 65 70 72 74 79 81
## 2 2 1 2 1 2 1 2 2 1 1 1 1 3 1 1 1 1 2 1
## 82 83 85 87 90 101 104 133 147 155 159 162 166 170 184 223 239
## 1 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1
##
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 7.00 14.00 22.50 40.14 48.25 239.00
##
## includes extended item information - examples:
## labels
## 1 怀山药
## 2 元参
## 3 苍术
##
## includes extended transaction information - examples:
## transactionID
## 1 舌下瘀
## 2 舌红
## 3 苔白
itemFrequency(tang3, type = "absolute")
## 怀山药 元参 苍术 丹参 葛根
## 10 81 62 100 102
## 枸杞子 熟地 砂仁 鸡内金 杜仲
## 41 48 27 29 30
## 川断 仙鹤草 旋覆花 海浮石 青黛
## 29 78 6 6 6
## 蛤粉 半夏曲 橘红 茯苓 桔梗
## 6 19 11 43 14
## 甘草 薄荷 白芷 瓜蒌 风化硝
## 37 15 26 35 23
## 苍耳子 辛夷 白术 党参 仙茅 当归 川芎
## 11 20 45 76 63
## 赤芍 白芍 白芍 桂枝 青风藤 穿山龙 山芋肉
## 65 60 22 22 66
## 炒谷麦芽 首乌 白蒺藜 苍术 黄柏 旋覆花 代赭石
## 21 9 34 27 25
## 生石膏 知母 生黄芪 芦根 白茅根
## 32 25 83 6 6
## 生地 生枣仁 夜交藤 桑白皮 地骨皮 黄芩 黄连
## 86 46 48 35 54
## 黄芩 半夏 半夏 夏枯草 当归 白花蛇舌草 威灵仙
## 17 11 27 15 45
## 乌梅 枣仁 沙参 白芍 柴胡 远志
## 13 31 25 12 15
## 菖蒲 黄芪 槐花 丹参 黄连 杏仁
## 20 20 7 23 22
## 薏米仁 叩仁 厚朴 半夏 竹叶
## 8 18 23 21 8
## 滑石 通草 炒防风 冬瓜子 冬葵子 炒枣仁
## 8 8 25 8 46
## 炒远志 灵磁石 生山楂 决明子 桑叶 菊花
## 8 25 32 23 15
## 谷精草 密蒙花 茯苓 茯神 炒白术 炒苍术 木香
## 32 17 47 51 37
## 益母草 炒三仙 桃仁 红花 吴芋 木瓜
## 40 15 54 15 14
## 桑寄生 桑枝 紫石英 紫贝齿 红花 五味子
## 36 42 28 24 33
## 麦冬 太子参 卧胆草 柏子仁 降香
## 45 50 15 36 7
## 制乳没 神曲 山药 桑螵蛸 葛根 丹参
## 40 46 69 23 23
## 天冬 麦冬 附片 怀牛膝 炙甘草 桂枝 茯苓
## 30 21 38 9 15
## 赤芍 柴胡 银花 连翘 栀子
## 31 20 17 17 23
## 豆豉 白茅根 芦根 生石膏 寒水石 生白术 枳实
## 13 13 9 34 27
## 生龙牡 姜黄 鸡血藤 洛石藤 五味子 五倍子
## 16 20 55 8 26
## 赤白芍 桂枝 钩藤 丹皮 生甘草
## 33 19 23 46 21
## 络石藤 桑枝 桑寄生 桑寄生 鸡血藤 山萸肉 泽泻
## 27 5 23 21 19
## 乌药 香附 风华硝 橘核 荔枝核 砂叩仁
## 5 9 5 5 6
## 守宫 炒枳实 生谷麦芽 石斛 半枝莲 半边莲
## 6 12 32 6 8
## ①知母 补骨脂 肉豆叩 桃仁 穿山甲
## 9 19 16 13 13
## 鲜茅 仙灵脾 生黄芩 全蝎 蜈蚣 天花粉
## 13 27 13 13 12
## 茜草 ①生黄芪 地龙 丝瓜络 黑芝麻
## 8 11 28 11 14
## 川芎 晚蚕砂 皂角子 猪苓 海螵蛸
## 10 21 21 6 1
## 鹿角霜 甘松 山芍 枸杞 菊花
## 12 12 8 8 25
## 生泽泻 苍术 白术 茺蔚子 夏枯草 磁石 茯神
## 8 10 8 13 5
## 黄芪 山药 石菖蒲 ?五灵脂 ?制附片 干姜
## 5 9 5 5 16
## ?黄柏 车前子 车前草 紫草 浮萍 炒芥穗
## 5 11 15 15 22
## 天麦冬 夜之藤 黄柏 木香 槟榔 木香 黄连
## 6 6 13 5 8
## 蒲公英 紫地丁 生牡蛎 夏枯草 浙贝
## 16 15 3 3 3
## 金银花 连翘 生白芍 枳壳 山芋 h菖蒲
## 3 26 19 23 3
## 生熟地 吴宇 地肤子 何首乌 羌活
## 20 5 7 33 10
## 蝉衣 蛇蜕 白头翁 手脚麻 钩藤 桑寄生
## 16 22 15 7 7
## 生内金 女贞子 菟丝子 苍术 桂枝 卧蛋草
## 20 11 12 12 14
## 黄芩 苦参 炒山药 附子 白芍 甘草
## 14 21 19 7 18
## 生石决明 山羊角 土茯苓 萆薢 车前子
## 13 10 12 12 14
## 白薇 风化消 蔻仁 沉香 高良姜 香附
## 7 6 7 12 7
## 骨碎补 钩藤 天麻 牛膝 肉桂 黄连 细辛
## 7 14 10 9 9
## 葶苈子 大枣白芥子 莱菔子 五味子 细辛 生芪
## 13 9 13 10 6
## 黄精 玉竹 乌梅 五味子 枳实 竹茹 半夏 竹茹
## 11 11 6 7 7
## 藿香 佩兰 薤白 羌独活 生山药 炮姜
## 12 20 9 9 8
## 黄连 炒小茴 云苓 水蛭 土元
## 9 9 8 8 8
## 乌蛇 陈皮 鱼腥草 丹参 檀香 远志 石菖蒲
## 14 9 12 5 5
## 白芥子 升麻 柴胡 升麻 桔梗 枳实 枳壳 薏仁
## 6 13 6 6 18
## 水牛角 杏仁 薏苡仁 桑螵蛸 海螵蛸 枸杞子 菊花 黄芪 浮小麦
## 8 5 2 20 3
## 麻黄根 浮小麦 知母 黄柏 炒陈皮 干姜 黄连 ①柴胡
## 3 6 5 5 8
## 生茶花 砂仁(后下) 郁金 白术 茯苓 金银花
## 4 4 4 4 2
## 瓜蒌 枳实 海风藤 制附片 桑叶 蝉蜕
## 9 15 4 8 8
## 柴胡 黄芩 冬瓜子 白芷 僵蚕 白果 葛根 升麻
## 5 6 6 6 6
## 僵蚕 细辛 滑石 甘草
## 11 11 5
itemFrequencyPlot(tang3, support = 0.2, main = "support大于0.2的项集支持度频率图")
itemFrequencyPlot(tang3, topN = 20, main = "support最大的前20个项集的支持度频率图")
<- apriori(tang3, parameter = list(support = 0.2, confidence = 0.1, target = "rules",
rules minlen = 2))
## Apriori
##
## Parameter specification:
## confidence minval smax arem aval originalSupport maxtime support minlen
## 0.1 0.1 1 none FALSE TRUE 5 0.2 2
## maxlen target ext
## 10 rules TRUE
##
## Algorithmic control:
## filter tree heap memopt load sort verbose
## 0.1 TRUE TRUE FALSE TRUE 2 TRUE
##
## Absolute minimum support count: 28
##
## set item appearances ...[0 item(s)] done [0.00s].
## set transactions ...[293 item(s), 140 transaction(s)] done [0.00s].
## sorting and recoding items ... [57 item(s)] done [0.00s].
## creating transaction tree ... done [0.00s].
## checking subsets of size 1 2 3 4 5 6 7 8 9 10 done [0.01s].
## writing ... [47010 rule(s)] done [0.01s].
## creating S4 object ... done [0.02s].
summary(rules)
## set of 47010 rules
##
## rule length distribution (lhs + rhs):sizes
## 2 3 4 5 6 7 8 9 10
## 946 4437 10232 13220 10614 5446 1752 333 30
##
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 2.000 4.000 5.000 5.134 6.000 10.000
##
## summary of quality measures:
## support confidence coverage lift
## Min. :0.2000 Min. :0.2745 Min. :0.2000 Min. :1.023
## 1st Qu.:0.2000 1st Qu.:0.8235 1st Qu.:0.2143 1st Qu.:1.436
## Median :0.2071 Median :0.9333 Median :0.2357 Median :1.673
## Mean :0.2195 Mean :0.8867 Mean :0.2553 Mean :1.690
## 3rd Qu.:0.2286 3rd Qu.:1.0000 3rd Qu.:0.2714 3rd Qu.:1.819
## Max. :0.6857 Max. :1.0000 Max. :0.7286 Max. :3.658
## count
## Min. :28.00
## 1st Qu.:28.00
## Median :29.00
## Mean :30.73
## 3rd Qu.:32.00
## Max. :96.00
##
## mining info:
## data ntransactions support confidence
## tang3 140 0.2 0.1
## call
## apriori(data = tang3, parameter = list(support = 0.2, confidence = 0.1, target = "rules", minlen = 2))
inspect(rules[1:6])
## lhs rhs support confidence coverage lift count
## [1] {柏子仁} => {麦冬} 0.2214286 0.8611111 0.2571429 2.679012 31
## [2] {麦冬} => {柏子仁} 0.2214286 0.6888889 0.3214286 2.679012 31
## [3] {柏子仁} => {太子参} 0.2357143 0.9166667 0.2571429 2.566667 33
## [4] {太子参} => {柏子仁} 0.2357143 0.6600000 0.3571429 2.566667 33
## [5] {柏子仁} => {山芋肉} 0.2000000 0.7777778 0.2571429 1.649832 28
## [6] {山芋肉} => {柏子仁} 0.2000000 0.4242424 0.4714286 1.649832 28
quality(rules[1:6])
## support confidence coverage lift count
## 1 0.2214286 0.8611111 0.2571429 2.679012 31
## 2 0.2214286 0.6888889 0.3214286 2.679012 31
## 3 0.2357143 0.9166667 0.2571429 2.566667 33
## 4 0.2357143 0.6600000 0.3571429 2.566667 33
## 5 0.2000000 0.7777778 0.2571429 1.649832 28
## 6 0.2000000 0.4242424 0.4714286 1.649832 28
inspect(sort(rules, by = "lift")[1:6])
## lhs rhs support confidence coverage
## [1] {益母草, 山药} => {木香} 0.2071429 0.9666667 0.2142857
## [2] {当归 川芎, 益母草, 山药} => {木香} 0.2071429 0.9666667 0.2142857
## [3] {丹参, 益母草, 山药} => {木香} 0.2071429 0.9666667 0.2142857
## [4] {葛根, 益母草, 山药} => {木香} 0.2071429 0.9666667 0.2142857
## [5] {丹参, 当归 川芎, 益母草, 山药} => {木香} 0.2071429 0.9666667 0.2142857
## [6] {葛根, 当归 川芎, 益母草, 山药} => {木香} 0.2071429 0.9666667 0.2142857
## lift count
## [1] 3.657658 29
## [2] 3.657658 29
## [3] 3.657658 29
## [4] 3.657658 29
## [5] 3.657658 29
## [6] 3.657658 29
<- subset(rules, subset = lift > 2)
rules_lift plot(rules_lift, method = "graph", control = list(nodeCol = grey.colors(10), edgeCol = grey(0.7),
alpha = 1))
## Available control parameters (with default values):
## layout = stress
## circular = FALSE
## ggraphdots = NULL
## edges = <environment>
## nodes = <environment>
## nodetext = <environment>
## colors = c("#EE0000FF", "#EEEEEEFF")
## engine = ggplot2
## max = 100
## verbose = FALSE
plot(rules_lift, method = "grouped", control = list(col = grey.colors(10)))
plot(rules_lift, method = "graph", engine = "htmlwidget", control = list(max = 200))
<- as(tang3, "binaryRatingMatrix")
tang4 as(tang4, "matrix")[1:3, 1:10]
## 怀山药 元参 苍术 丹参 葛根 枸杞子 熟地 砂仁 鸡内金 杜仲
## 舌下瘀 TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## 舌红 TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## 苔白 TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
image(tang4)
下面进行数据划分,然后训练推荐模型:
<- evaluationScheme(tang4, method="cross-validation",
scheme k=10, given=3)
<- list(
algorithms POPULAR = list(name = "POPULAR", param = NULL),
UBCF=list(name="UBCF",param=list(method='jaccard')),
IBCF=list(name="IBCF",param=list(method='jaccard'))
)<- evaluate(scheme,algorithms,n=c(1:5)) result
## POPULAR run fold/sample [model time/prediction time]
## 1 [0sec/0.05sec]
## 2 [0sec/0.05sec]
## 3 [0sec/0.02sec]
## 4 [0.02sec/0sec]
## 5 [0sec/0sec]
## 6 [0sec/0.01sec]
## 7 [0sec/0.02sec]
## 8 [0sec/0.02sec]
## 9 [0sec/0.02sec]
## 10 [0sec/0sec]
## UBCF run fold/sample [model time/prediction time]
## 1 [0.01sec/0.18sec]
## 2 [0sec/0.22sec]
## 3 [0sec/0.15sec]
## 4 [0sec/0.17sec]
## 5 [0sec/0.17sec]
## 6 [0sec/0.17sec]
## 7 [0sec/0.15sec]
## 8 [0sec/0.16sec]
## 9 [0sec/0.16sec]
## 10 [0sec/0.17sec]
## IBCF run fold/sample [model time/prediction time]
## 1 [0.06sec/0.01sec]
## 2 [0.06sec/0sec]
## 3 [0.06sec/0.02sec]
## 4 [0.05sec/0.02sec]
## 5 [0.07sec/0sec]
## 6 [0.07sec/0sec]
## 7 [0.07sec/0sec]
## 8 [0.06sec/0sec]
## 9 [0.05sec/0.01sec]
## 10 [0.08sec/0sec]
par(mfrow=c(1,2))
plot(result,lty=1:3,annotate=1:3,legend="topleft") # ROC
plot(result,"prec/rec",lty=1:3,annotate=1:3) #precision-recall
par(mfrow=c(1,1))
<- Recommender(getData(scheme,"train"),method="POPULAR")
model.popular <- Recommender(getData(scheme,"train"),method="UBCF")
model.ubcf <- Recommender(getData(scheme,"train"),method="IBCF")
model.ibcf <- predict(model.popular,getData(scheme,"known"),type="topNList")
predict.popular <- predict(model.ubcf,getData(scheme,"known"),type="topNList")
predict.ubcf <- predict(model.ibcf,getData(scheme,"known"),type="topNList")
predict.ibcf
<- rbind(calcPredictionAccuracy(predict.popular,getData(scheme,"unknow"),given=3),
predict.err calcPredictionAccuracy(predict.ubcf,getData(scheme,"unknow"),given=3),
calcPredictionAccuracy(predict.ibcf,getData(scheme,"unknow"),given=3))
rownames(predict.err) <- c("POPULAR",'UBCF','IBCF')
round(predict.err,3)
## TP FP FN TN N precision recall TPR FPR
## POPULAR 5.714 4.286 30.500 249.500 290 0.571 0.256 0.256 0.016
## UBCF 3.571 6.429 32.643 247.357 290 0.357 0.258 0.258 0.026
## IBCF 5.786 4.214 30.429 249.571 290 0.579 0.291 0.291 0.016
<- Recommender(tang4,method="IBCF",parameter=list(method='jaccard'))
model.best <- predict(model.best,newdata=tang4,n=10)
data.predict <- bestN(data.predict,3)
recom3 as(recom3,"list")[1:5]
## $`0`
## [1] "半夏曲" "柴胡" "桂枝"
##
## $`1`
## [1] "升麻 桔梗" "枳实 枳壳" "赤芍 白芍"
##
## $`2`
## [1] "蝉衣" "姜黄" "山萸肉"
##
## $`3`
## [1] "白头翁" "甘草" "桂枝"
##
## $`4`
## [1] "当归 川芎" "柏子仁" "益母草"
as(recom3,'list')%>%set_names(rownames(tang1))
## $舌下瘀
## [1] "半夏曲" "柴胡" "桂枝"
##
## $舌红
## [1] "升麻 桔梗" "枳实 枳壳" "赤芍 白芍"
##
## $苔白
## [1] "蝉衣" "姜黄" "山萸肉"
##
## $血糖
## [1] "白头翁" "甘草" "桂枝"
##
## $大便
## [1] "当归 川芎" "柏子仁" "益母草"
##
## $小便
## [1] "杜仲" "当归 川芎" "灵磁石"
##
## $胰岛素
## [1] "蛇蜕" "桑螵蛸" "黄芩 半夏"
##
## $脉弦缓
## [1] "生黄芪" "仙茅" "苍术"
##
## $尖红
## [1] "①柴胡" "旋覆花" "海浮石"
##
## $病情
## [1] "仙鹤草" "生黄芪" "元参"
##
## $空腹
## [1] "旋覆花 代赭石" "炒防风" "炒芥穗"
##
## $脉弦细
## [1] "白花蛇舌草" "山芋肉" "木瓜"
##
## $舌尖红
## [1] "①柴胡" "旋覆花" "海浮石"
##
## $面色
## [1] "生石膏 寒水石" "卧胆草" "白茅根 芦根"
##
## $以下
## [1] "女贞子" "苍耳子 辛夷" "黄芩 半夏"
##
## $外侧
## [1] "葛根" "苍术" "生黄芪"
##
## $左右
## [1] "紫草" "浮萍" "苍术"
##
## $疼痛
## [1] "枳实" "葶苈子" "莱菔子"
##
## $胃气
## [1] "柴胡 黄芩" "葛根" "丹参"
##
## $口干
## [1] "桑寄生" "知母 黄柏" "菟丝子"
##
## $口渴
## [1] "栀子" "桑寄生" "卧胆草"
##
## $暗苔
## [1] "紫草" "浮萍" "党参"
##
## $胃脘
## [1] "枳实" "仙茅" "女贞子"
##
## $三阳
## [1] "①柴胡" "苍术 黄柏" "白芍 桂枝"
##
## $尿多
## [1] "蝉衣" "茯苓 茯神" "赤芍 白芍"
##
## $舌淡
## [1] "白头翁" "生内金" "僵蚕"
##
## $一月
## [1] "炒芥穗" "山药" "枳实"
##
## $人民
## [1] "蛇蜕" "炒芥穗" "仙茅"
##
## $心脏
## [1] "生石膏 寒水石" "蛇蜕" "蝉衣"
##
## $淡暗
## [1] "瓜蒌" "远志" "赤芍"
##
## $休息
## [1] "生内金" "吴芋" "薄荷"
##
## $出血
## [1] "苍耳子 辛夷" "苍术 桂枝" "女贞子"
##
## $脉沉细
## [1] "苍耳子 辛夷" "生白芍" "苍术 桂枝"
##
## $饮食
## [1] "?五灵脂" "?制附片" "?黄柏"
##
## $体重
## [1] "柴胡" "生内金" "晚蚕砂"
##
## $子宫
## [1] "女贞子" "菟丝子" "制附片"
##
## $右足
## [1] "黄连" "炒小茴" "黄柏"
##
## $肿痛
## [1] "黄连" "炒小茴" "黄柏"
##
## $五月
## [1] "生茶花" "砂仁(后下)" "郁金"
##
## $口渴多饮
## [1] "白茅根 芦根" "生石膏 寒水石" "黄连"
##
## $舌淡苔白
## [1] "夜交藤" "蝉衣" "生谷麦芽"
##
## $中度
## [1] "苍术 黄柏" "茯苓 茯神" "仙鹤草"
##
## $关闭
## [1] "苍术 黄柏" "仙鹤草" "枳壳"
##
## $动脉
## [1] "苍术 黄柏" "仙鹤草" "柴胡"
##
## $口苦
## [1] "苍术 黄柏" "桑寄生" "当归 川芎"
##
## $心悸
## [1] "苍术 黄柏" "仙鹤草" "枳壳"
##
## $出汗
## [1] "蝉衣" "紫草" "浮萍"
##
## $关节
## [1] "桔梗" "葶苈子" "莱菔子"
##
## $发热
## [1] "丹参" "川断" "生地"
##
## $汗出
## [1] "川断" "黄芩 半夏" "天麦冬"
##
## $腰疼
## [1] "丹参" "川断" "生地"
##
## $耳鸣
## [1] "茯苓 茯神" "远志" "桑叶 菊花"
##
## $虚汗
## [1] "山药" "生白芍" "沙参"
##
## $颈动脉
## [1] "山药" "生白芍" "沙参"
##
## $舌根瘀
## [1] "白芍 桂枝" "蔻仁" "高良姜 香附"
##
## $气短
## [1] "木香 槟榔" "紫草" "浮萍"
##
## $胀满
## [1] "枳实" "枳壳" "炒枣仁"
##
## $以上
## [1] "茜草" "薤白" "知母 黄柏"
##
## $内侧
## [1] "苍耳子 辛夷" "旋覆花 代赭石" "苍术"
##
## $四肢
## [1] "僵蚕" "细辛" "鹿角霜"
##
## $复发
## [1] "旋覆花 代赭石" "川断" "仙茅"
##
## $少腹
## [1] "仙茅" "丹参" "葛根"
##
## $止痛
## [1] "旋覆花 代赭石" "川断" "仙茅"
##
## $肌肉
## [1] "仙茅" "旋覆花 代赭石" "生黄芪"
##
## $沉滞
## [1] "卧蛋草" "半夏曲" "远志"
##
## $不利
## [1] "旋覆花" "海浮石" "青黛"
##
## $六月
## [1] "山芋" "远志" "茯苓 茯神"
##
## $语言
## [1] "山芋" "远志" "茯苓 茯神"
##
## $产后
## [1] "生地" "桑螵蛸" "生黄芪"
##
## $妊娠
## [1] "生地" "桑螵蛸" "生黄芪"
##
## $胸痛
## [1] "苍耳子 辛夷" "女贞子" "生黄芪"
##
## $脉细
## [1] "生黄芪" "生内金" "苍术"
##
## $左手
## [1] "生石膏 寒水石" "卧胆草" "白茅根 芦根"
##
## $心烦
## [1] "茜草" "薤白" "仙茅"
##
## $右手
## [1] "木香 槟榔" "元参" "①柴胡"
##
## $肿胀
## [1] "冬瓜子" "白芷 僵蚕" "薏仁"
##
## $虚空
## [1] "钩藤" "生石膏 寒水石" "蛇蜕"
##
## $恶寒
## [1] "元参" "生黄芪" "仙灵脾"
##
## $盗汗
## [1] "苍术 黄柏" "生地" "苍术"
##
## $面赤
## [1] "苍术 黄柏" "生地" "苍术"
##
## $不足
## [1] "葛根" "丹参" "灵磁石"
##
## $头重
## [1] "葛根" "丹参" "灵磁石"
##
## $皮肤
## [1] "大枣白芥子" "仙茅" "五味子 细辛"
##
## $春秋
## [1] "生枣仁" "党参" "桑寄生"
##
## $行走
## [1] "①柴胡" "党参" "桑寄生"
##
## $四支
## [1] "葛根" "山药" "生地"
##
## $心病
## [1] "女贞子" "山药" "川断"
##
## $睡眠
## [1] "茯苓 茯神" "桑叶 菊花" "元参"
##
## $心热
## [1] "生白芍" "黄芩 半夏" "川断"
##
## $腹胀
## [1] "元参" "生内金" "薄荷"
##
## $浮肿
## [1] "菊花" "土茯苓" "萆薢"
##
## $自然
## [1] "苍术 桂枝" "葛根" "生地"
##
## $疲劳
## [1] "茯苓 茯神" "泽泻" "生内金"
##
## $变化
## [1] "生黄芪" "紫草" "浮萍"
##
## $口疮
## [1] "白芍 柴胡" "柴胡 黄芩" "络石藤"
##
## $消瘦
## [1] "白芍 柴胡" "柴胡 黄芩" "络石藤"
##
## $发作
## [1] "姜黄" "生甘草" "元参"
##
## $咳嗽
## [1] "仙茅" "仙鹤草" "山药"
##
## $鼻塞
## [1] "柏子仁" "姜黄" "五味子"
##
## $安定
## [1] "柴胡" "生黄芪" "①知母"
##
## $生气
## [1] "柴胡" "生黄芪" "①柴胡"
##
## $太息
## [1] "山药" "桑螵蛸" "葛根"
##
## $灼热
## [1] "山药" "桑螵蛸" "葛根"
##
## $后血
## [1] "生黄芪" "生内金" "元参"
##
## $下降
## [1] "生内金" "仙鹤草" "桑寄生"
##
## $腹满
## [1] "枳实" "生内金" "元参"
##
## $手足
## [1] "五味子 五倍子" "苍术" "苍术 白术"
##
## $暗淡
## [1] "元参" "生黄芪" "生内金"
##
## $有时
## [1] "元参" "生黄芪" "苍术"
##
## $不遂
## [1] "葛根" "枣仁" "元参"
##
## $中风
## [1] "仙茅" "当归 川芎" "生黄芪"
##
## $半身不遂
## [1] "仙茅" "当归 川芎" "生黄芪"
##
## $发痒
## [1] "生黄芪" "仙茅" "仙鹤草"
##
## $手心
## [1] "生黄芪" "仙茅" "仙鹤草"
##
## $手指
## [1] "生黄芪" "仙茅" "仙鹤草"
##
## $清瘦
## [1] "生黄芪" "仙茅" "仙鹤草"
##
## $绞痛
## [1] "桃仁" "洛石藤" "元参"
##
## $三月
## [1] "仙茅" "山药" "白术"
##
## $沉重
## [1] "葛根" "丹参" "仙茅"
##
## $头汗
## [1] "生黄芪" "党参" "菊花"
##
## $葡萄
## [1] "元参" "仙鹤草" "桑寄生"
##
## $善饥
## [1] "乌梅 五味子" "苍术" "元参"
##
## $息肉
## [1] "紫地丁" "制乳没" "桑枝"
##
## $口臭
## [1] "生黄芪" "元参" "苍术"
##
## $咽喉
## [1] "生黄芪" "元参" "苍术"
##
## $长年
## [1] "生黄芪" "元参" "苍术"
##
## $浑浊
## [1] "元参" "赤白芍" "生黄芪"
##
## $言语
## [1] "元参" "赤白芍" "生黄芪"
##
## $鼻干
## [1] "元参" "赤白芍" "生黄芪"
##
## $舌红少苔
## [1] "仙茅" "生地" "赤芍 白芍"
##
## $天气
## [1] "仙茅" "仙鹤草" "生黄芪"
##
## $风湿
## [1] "桑寄生" "元参" "生黄芪"
##
## $精神
## [1] "桂枝" "葛根 丹参" "枣仁"
##
## $上升
## [1] "蝉衣" "怀山药" "苍术"
##
## $小指
## [1] "元参" "山药" "苍术"
##
## $先后
## [1] "生黄芪" "元参" "炒枣仁"
##
## $肝病
## [1] "丹参" "赤芍" "①柴胡"
##
## $病变
## [1] "生黄芪" "元参" "仙鹤草"
##
## $耳聋
## [1] "生黄芪" "元参" "仙鹤草"
##
## $退行
## [1] "生黄芪" "元参" "仙鹤草"