-
Notifications
You must be signed in to change notification settings - Fork 0
/
TourRecommendations.py
63 lines (46 loc) · 20.9 KB
/
TourRecommendations.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
from __future__ import division, print_function
from future_builtins import ascii, filter, hex, map, oct, zip
import numpy as np
import pandas as pd
from apriori import createC1 #new stuff
from apriori import scanD #new stuff
from apriori import load_dataset #new stuff
pd.options.display.max_rows=20
alpha=0.000000001
beta=0.0000000001
max_other_items=2
item_of_interest = frozenset(['italy-greece'])
from apriori import apriori
from apriori import generateRules
#et_tours=pd.read_csv('\\\\Usb-fileserver\departments\ET\Analytics\Digital Analytics\data\TourViews.csv')
et_tours=pd.read_csv('TourBrowsing.csv')
#print(et_tours.shape)
#mydataset= load_dataset()
#tour_names = ['ghana','nice-france-language-immersion','tortuguero-national-park','service-learning-transforming-villages','volunteer-in-costa-rica','vienna-venice-paris','shanghai-beijing-gsls','experience-france-switzerland','study-spanish-costa-rica','france-switzerland-summit','france','service-learning-monte-cristi','barcelona-spain-language-immersion','costa-rica-conservation','germany-switzerland-summit','rome-the-alps-paris','madrid-spain-language-immersion','italian-treasures','athens-sicily','england-scotland','venice-florence-cinque-terre','ap-english-literature','custom-france','custom-portugal-spain','italy-switzerland-summit','paris-florence-venice','service-learning-history-and-culture','treasures-of-thailand','venice-the-alps-paris','ecuador-adventure-above-the-clouds','rome-tuscany-french-riviera','service-learning-lake-titicaca','paris-france-language-immersion','eastern-europe-switzerland-summit','croatia','switzerland-italy','china-beijing-xian-yangshuo','london-paris-davos-summit','artists-of-france-spain','finland-sweden-switzerland-summit','spanish-in-costa-rica','service-learning-costa-rica','china','paris-loire-valley-french-riviera','custom-england','turkey','paris-berlin','lisbon-seville-madrid','england-france-culture','stem-england-switzerland-summit','russia','service-learning-sustainable-communities','rio-de-janeiro-brazil','paris-venice-florence-rome','madrid-barcelona','london-paris-edinburgh','rome-eternal-city','european-horizons','spanish-highlights','dublin-london','switzerland-italy-france','central-europe','rome-to-sicily','germany','mediterranean-switzerland','athens-florence-rome','service-learning-dominican-republic','italy-germany','london-paris-madrid','paris-french-riviera-rome','ecuador','paris-madrid','paris-florence-rome','germany-france-spain','panama','madrid-andalusia','china-beyond-the-wall','costa-rica-san-jose-summit','rome-sorrento','london-paris-the-alps','germany-the-alps','paris-normandy-brittany','florence-rome','grecian-oddyssey','english-literature','ghana-walk-through-history','viva-argentina','experience-germany','paris-copenhagen','brazil-argentina','london-in-depth','paris-the-pyrenees','discover-costa-rica','ecuador-amazon-discovery','rome-paris','costa-rica-nicaragua','madrid-cordoba-seville','paris-provence-barcelona','french-promenade','experience-italy','custom-italy-greece','french','ecuador-panoramic-experience','education-as-a-human-right','london-paris-venice-rome','paris-mediterranean-europe','best-of-italy','munich-salzburg-vienna','india-golden-triangle','england-scotland-france','nicaragua-land-of-lakes-and-volcanoes','british-isles-capitals','munich-bavaria','rome-athens','peru-cuzco-machu-picchu-lake-titicaca','madrid-paris-rome','service-learning-peru','paris-french-riviera','india-journey-through-time','paris-chateaux','thailand-cambodia-vietnam','central-europe-treasures','european-kaleidoscope','france-germany-the-alps','italy-spain','england-france-spain','berlin-prague-the-alps','spanish-in-spain','england','amsterdam-paris','scandinavian-capitals','switzerland-summit','rome-to-athens','holocaust-history','across-the-english-channel','rome','london-paris','mediterranean-journey','amsterdam-brussels-paris-london','european-mosaic','london-theater','south-africa','costa-rican-explorer','beijing-great-wall-of-china','spain-culture','service-learning-cabarete','madrid','spain','egypt-the-nile','london-paris-rome','france-spain','dublin-london-paris','kenya-the-heartbeat-of-africa','britain-ireland','custom-europe','portugal-spain','costa-rica-natural-wonders','london-paris-barcelona','iceland','venice-florence-rome','essence-of-europe','splendors-of-the-mediterranean','sydney-great-barrier-reef','wwii-western-front-history','barcelona-madrid','greece-italy-spain','paris-normandy-london','europe-at-leisure','galapagos-islands','paris-in-depth','australia-new-zealand-journey','london','great-britain-ireland','istanbul-athens','berlin-prague-krakow-budapest','paris-barcelona','paris-city-stay','ap-european-history','austria-germany-switzerland','scotland-ireland','european-carousel','athens-greek-islands','spain-france-italy','costa-rica-coast-to-coast','greece','belize','japan-land-of-the-rising-sun','european-showcase','ireland','european-capitals','mediterranean-coast','australia-new-zealand','south-pacific','england-france','peru','italy','china-beijing-xian-shanghai','the-grand-tour-of-europe','adventure-in-spain','beautiful-italy','england-ireland-wales','germany-italy-switzerland','costa-rica-touch-of-the-tropics','london-paris-florence-rome','italy-greece']
#tour_names = ['italy-greece','london-paris-florence-rome','costa-rica-touch-of-the-tropics','germany-italy-switzerland','england-ireland-wales','beautiful-italy','adventure-in-spain','the-grand-tour-of-europe','china-beijing-xian-shanghai','peru','england-france','italy','south-pacific','australia-new-zealand','ireland','japan-land-of-the-rising-sun','european-showcase','belize','european-capitals','costa-rica-coast-to-coast','greece','greece-italy-spain','scotland-ireland','paris-city-stay','athens-greek-islands','mediterranean-coast','austria-germany-switzerland','spain-france-italy','galapagos-islands','berlin-prague-krakow-budapest','istanbul-athens','european-carousel','london','ap-european-history','australia-new-zealand-journey','sydney-great-barrier-reef','costa-rica-natural-wonders','paris-in-depth','great-britain-ireland','europe-at-leisure','iceland','britain-ireland','barcelona-madrid','custom-europe','venice-florence-rome','splendors-of-the-mediterranean','portugal-spain','beijing-great-wall-of-china','south-africa','wwii-western-front-history','england','amsterdam-brussels-paris-london','paris-barcelona','madrid','essence-of-europe','dublin-london-paris','egypt-the-nile','switzerland-summit','rome','london-paris','london-paris-rome','london-in-depth','british-isles-capitals','england-scotland','france-spain','kenya-the-heartbeat-of-africa','munich-bavaria','amsterdam-paris','costa-rican-explorer','france-germany-the-alps','central-europe-treasures','london-paris-barcelona','spain-culture','london-paris-venice-rome','rome-to-athens','thailand-cambodia-vietnam','peru-cuzco-machu-picchu-lake-titicaca','holocaust-history','italy-spain','madrid-paris-rome','paris-normandy-london','rome-athens','across-the-english-channel','european-mosaic','london-theater','discover-costa-rica','germany-the-alps','berlin-prague-the-alps','rome-paris','scandinavian-capitals','india-golden-triangle','spain','madrid-cordoba-seville','mediterranean-journey','munich-salzburg-vienna','brazil-argentina','european-kaleidoscope','service-learning-cabarete','athens-florence-rome','costa-rica-nicaragua','paris-chateaux','service-learning-peru','germany','london-paris-the-alps','paris-copenhagen','costa-rica-san-jose-summit','english-literature','experience-germany','viva-argentina','florence-rome','best-of-italy','custom-italy-greece','england-france-spain','experience-italy','germany-france-spain','london-paris-edinburgh','madrid-andalusia','paris-madrid','london-paris-madrid','paris-mediterranean-europe','england-scotland-france','venice-the-alps-paris','paris-french-riviera','paris-normandy-brittany','treasures-of-thailand','nicaragua-land-of-lakes-and-volcanoes','rome-sorrento','grecian-oddyssey','london-paris-davos-summit','paris-provence-barcelona','dublin-london','india-journey-through-time','french-promenade','paris-french-riviera-rome','ecuador-panoramic-experience','rome-eternal-city','italy-germany','european-horizons','ecuador-amazon-discovery','central-europe','paris-the-pyrenees','education-as-a-human-right','finland-sweden-switzerland-summit','spanish-highlights','mediterranean-switzerland','paris-france-language-immersion','service-learning-costa-rica','switzerland-italy','turkey','ghana-walk-through-history','panama','china-beijing-xian-yangshuo','madrid-barcelona','paris-venice-florence-rome','custom-england','custom-portugal-spain','switzerland-italy-france','service-learning-dominican-republic','stem-england-switzerland-summit','croatia','paris-florence-rome','venice-florence-cinque-terre','lisbon-seville-madrid','russia','england-france-culture','germany-switzerland-summit','paris-berlin','china-beyond-the-wall','eastern-europe-switzerland-summit','service-learning-lake-titicaca','rome-to-sicily','athens-sicily','china','rio-de-janeiro-brazil','italian-treasures','rome-tuscany-french-riviera','artists-of-france-spain','france-switzerland-summit','service-learning-sustainable-communities','italy-switzerland-summit','paris-loire-valley-french-riviera','best-of-barcelona','french','paris-florence-venice','ecuador','playa-tamarindo-costa-rica-language-immersion-tour','costa-rica-conservation','custom-france','ap-english-literature','dubai-abhu-dhabi','ecuador-adventure-above-the-clouds','peru-culture-and-service','madrid-spain-language-immersion','paris-france-language-immersion-tour','barcelona-spain-language-immersion','dominican-republic-empowering-children','service-learning-monte-cristi','service-learning-history-and-culture','tortuguero-national-park','nice-france-language-immersion','dominican-republic-community-development','madrid-spain-language-immersion-tour','dominican-republic-culture-and-service','ecuador-culture-and-service','ghana','volunteer-in-costa-rica','nicaragua-culture-and-service','playa-tamarindo-costa-rica-language-immersion','ecuador-galapagos-to-the-andes','barcelona-spain-language-immersion-tour','dominican-republic-environmental-citizenship','experience-france-switzerland','rome-the-alps-paris','france','mwi','shanghai-beijing-gsls','peru-community-development','malaga-spain-language-immersion','vienna-venice-paris','spanish-in-spain','service-learning-transforming-villages','nicaragua-sustainable-future','rome-italy-language-immersion','nice-france-language-immersion-tour','service-learning-baseball','munich-germany-language-immersion','china-culture-and-service','tortuguero-arenal-summit','kenya-maasai-mara-community-development','malaga-spain-language-immersion-tour','china-language-immersion-tour','arenal-central-pacific-coast-summit','china-language-immersion','ghana-sustainable-future','alps-provence-barcelona','spanish-in-costa-rica','england-science-innovation','peru-lake-titicaca-sustainability','ecuador-amazon-basin','nicaragua-guancaste-summit','nicaragua-guanacaste','ecuador-andean-communities','discover-ecuador','rome-italy-language-immersion-tour','experience-berlin','study-french-nice-france','japan-kyoto-hiroshima-tokyo','berlin-german-language-immersion-tour','study-spanish-malaga-spain','arenal-sarapiqui-summit','study-spanish-costa-rica','seoul-busan-gyeongju','chinese','munich-germany-language-immersion-tour','berlin-prague','study-mandarin-beijing-china','shanghai-hangzhou-gsls','mexico-yucatan','tokyo-japan-language-immersion','shanghai-hong-kong-gsls']
#tour_names = ['italy-greece','london-paris-florence-rome','costa-rica-touch-of-the-tropics','germany-italy-switzerland','england-ireland-wales','adventure-in-spain','beautiful-italy','the-grand-tour-of-europe','china-beijing-xian-shanghai','peru','costa-rica-coast-to-coast','greece-italy-spain','england-france','japan-land-of-the-rising-sun','italy','galapagos-islands','south-pacific','greece','belize','paris-city-stay','australia-new-zealand','austria-germany-switzerland','ap-european-history','scotland-ireland','athens-greek-islands','mediterranean-coast','paris-in-depth','ireland','london','european-capitals','european-showcase','berlin-prague-krakow-budapest','costa-rica-natural-wonders','sydney-great-barrier-reef','spain-france-italy','venice-florence-rome','beijing-great-wall-of-china','istanbul-athens','iceland','south-africa','australia-new-zealand-journey','playa-tamarindo-costa-rica-language-immersion-tour','switzerland-summit','barcelona-madrid','paris-barcelona','custom-europe','london-paris-davos-summit','france-spain','rome','european-carousel','madrid','paris-france-language-immersion-tour','london-in-depth','best-of-barcelona','london-paris','europe-at-leisure','england','madrid-paris-rome','london-theater','great-britain-ireland','munich-bavaria','france-germany-the-alps','amsterdam-brussels-paris-london','london-paris-rome','peru-cuzco-machu-picchu-lake-titicaca','splendors-of-the-mediterranean','rome-paris','peru-culture-and-service','rome-athens','england-scotland','spain','dublin-london-paris','paris-normandy-london','portugal-spain','rome-to-athens','wwii-western-front-history','madrid-cordoba-seville','italy-spain','costa-rican-explorer','britain-ireland','london-paris-barcelona','essence-of-europe','across-the-english-channel','discover-costa-rica','egypt-the-nile','british-isles-capitals','london-paris-venice-rome','india-golden-triangle','dubai-abhu-dhabi','costa-rica-nicaragua','thailand-cambodia-vietnam','english-literature','dominican-republic-empowering-children','amsterdam-paris','experience-italy','costa-rica-san-jose-summit','scandinavian-capitals','berlin-prague-the-alps','madrid-spain-language-immersion-tour','germany-the-alps','paris-normandy-brittany','spain-culture','holocaust-history','central-europe-treasures','european-mosaic','dominican-republic-culture-and-service','ecuador-culture-and-service','brazil-argentina','mediterranean-journey','athens-florence-rome','european-kaleidoscope','experience-germany','munich-salzburg-vienna','paris-provence-barcelona','best-of-italy','england-france-spain','florence-rome','paris-chateaux','paris-madrid','kenya-maasai-mara-community-development','custom-italy-greece','stem-england-switzerland-summit','nicaragua-culture-and-service','paris-french-riviera','tokyo-japan-language-immersion','london-paris-the-alps','paris-copenhagen','service-learning-costa-rica','germany-france-spain','madrid-andalusia','mediterranean-switzerland','ecuador-galapagos-to-the-andes','nice-france-language-immersion-tour','rome-sorrento','barcelona-spain-language-immersion-tour','england-scotland-france','rome-eternal-city','italy-germany','paris-mediterranean-europe','viva-argentina','london-paris-madrid','central-europe','dublin-london','paris-venice-florence-rome','dominican-republic-environmental-citizenship','custom-england','china','venice-the-alps-paris','china-culture-and-service','finland-sweden-switzerland-summit','dominican-republic-community-development','panama','london-paris-edinburgh','french-promenade','germany','eastern-europe-switzerland-summit','england-france-culture','germany-switzerland-summit','education-as-a-human-right','paris-florence-rome','peru-community-development','peru-lake-titicaca-sustainability','italy-switzerland-summit','treasures-of-thailand','european-horizons','spanish-highlights','switzerland-italy-france','paris-french-riviera-rome','costa-rica-conservation','custom-portugal-spain','ecuador','paris-the-pyrenees','france-switzerland-summit','turkey','madrid-barcelona','malaga-spain-language-immersion-tour','artists-of-france-spain','ghana-sustainable-future','venice-florence-cinque-terre','switzerland-italy','athens-sicily','lisbon-seville-madrid','china-beijing-xian-yangshuo','croatia','custom-france','paris-loire-valley-french-riviera','rio-de-janeiro-brazil','tortuguero-national-park','russia','india-culture-and-service','rome-to-sicily','nicaragua-sustainable-future','rome-italy-language-immersion-tour','rome-tuscany-french-riviera','ecuador-amazon-basin','ap-english-literature','china-language-immersion-tour','experience-berlin','italian-treasures','volunteer-in-costa-rica','paris-florence-venice','tortuguero-arenal-summit','ecuador-andean-communities','berlin-german-language-immersion-tour','arenal-central-pacific-coast-summit','munich-germany-language-immersion-tour','experience-france-switzerland','kenya-the-heartbeat-of-africa','rome-the-alps-paris','ghana','vienna-venice-paris','france','arenal-sarapiqui-summit','mwi','england-science-innovation','nicaragua-guancaste-summit','nicaragua-guanacaste','grecian-oddyssey','discover-ecuador','french','service-learning-lake-titicaca','service-learning-peru','service-learning-cabarete','exploring-arabian-culture-summit','lead-change-dubai-summit','alps-provence-barcelona','ecuador-amazon-discovery','nicaragua-land-of-lakes-and-volcanoes','seoul-busan-gyeongju','malaga-spain-language-immersion','spanish-in-spain','china-beyond-the-wall','better-tomorrow-dubai-summit','paris-berlin','service-learning-sustainable-communities','business-of-better-tomorrow-summit','spanish-in-costa-rica','cultural-transformation-dubai-summit','service-learning-monte-cristi']
tour_names = ['italy-greece','london-paris-florence-rome','costa-rica-touch-of-the-tropics','germany-italy-switzerland','england-ireland-wales','adventure-in-spain','beautiful-italy','the-grand-tour-of-europe','china-beijing-xian-shanghai','peru','south-pacific','greece-italy-spain','european-capitals','galapagos-islands','mediterranean-coast','greece','paris-city-stay','japan-land-of-the-rising-sun','australia-new-zealand','costa-rica-coast-to-coast','scotland-ireland','italy','england-france','iceland','ireland','european-showcase','istanbul-athens','south-africa','sydney-great-barrier-reef','belize','best-of-barcelona','australia-new-zealand-journey','beijing-great-wall-of-china','switzerland-summit','costa-rica-natural-wonders','madrid','europe-at-leisure','london','paris-in-depth','splendors-of-the-mediterranean','ap-european-history','venice-florence-rome','european-carousel','amsterdam-brussels-paris-london','athens-greek-islands','egypt-the-nile','essence-of-europe','munich-bavaria','dubai-abhu-dhabi','rome-athens','peru-cuzco-machu-picchu-lake-titicaca','across-the-english-channel','austria-germany-switzerland','india-golden-triangle','great-britain-ireland','spain-france-italy','costa-rican-explorer','rome','england','madrid-paris-rome','central-europe-treasures','european-kaleidoscope','berlin-prague-krakow-budapest','paris-normandy-london','france-germany-the-alps','peru-culture-and-service','rome-paris','custom-europe','portugal-spain','scandinavian-capitals','madrid-cordoba-seville','britain-ireland','paris-barcelona','european-mosaic','playa-tamarindo-costa-rica-language-immersion-tour','barcelona-madrid','costa-rica-nicaragua','british-isles-capitals','london-paris-rome','thailand-cambodia-vietnam','paris-copenhagen','london-theater','spain','france-spain','costa-rica-san-jose-summit','brazil-argentina','england-scotland','dominican-republic-empowering-children','rome-to-athens','mediterranean-journey','discover-costa-rica','amsterdam-paris','germany-the-alps','munich-salzburg-vienna','italy-spain','mediterranean-switzerland','experience-germany','paris-madrid','dominican-republic-culture-and-service','london-paris','experience-italy','nicaragua-culture-and-service','italy-germany','viva-argentina','panama','dublin-london-paris','rome-sorrento','spain-culture','kenya-maasai-mara-community-development','athens-florence-rome','spanish-highlights','wwii-western-front-history','paris-france-language-immersion-tour','madrid-spain-language-immersion-tour','germany-france-spain','berlin-prague-the-alps','european-horizons','ecuador-culture-and-service','central-europe','eastern-europe-switzerland-summit','ecuador-galapagos-to-the-andes','london-paris-edinburgh','london-paris-the-alps','paris-mediterranean-europe','london-in-depth','florence-rome','germany-switzerland-summit','athens-sicily','venice-the-alps-paris','croatia','madrid-andalusia','london-paris-barcelona','holocaust-history','dominican-republic-environmental-citizenship']
df=pd.DataFrame(et_tours,columns=tour_names)
#print(df.shape)
#print(df.head)
for index in range(len(tour_names)):
# tour_to_name = {'0' : np.nan, '1' : tour_names[index],'2' : tour_names[index],'1' : tour_names[index],'3' : tour_names[index],'4' : tour_names[index],'5' : tour_names[index],'6' : tour_names[index],'7' : tour_names[index]}
tour_to_name = {0 : np.nan, 1 : tour_names[index]}
df[tour_names[index]]=df[tour_names[index]].map(tour_to_name)
print(df.head)
C1 = createC1(df) #new stuff
D = map(set,df) #new stuff
L1,support_data=scanD(D,C1,0.0000005) #new stuff
my_data=list()
for index in range(df.shape[0]):
basket = list(df.ix[index].dropna())
my_data.append(basket)
L, suppData = apriori(my_data)
print('Identified rules with support = ',alpha,'and confidence= ',beta)
rules=generateRules(L,suppData,minConf=beta)
n_other_items=1
while n_other_items <= max_other_items:
print('\nRules with ',n_other_items,'other item(s)')
for item in L[n_other_items]:
if item.intersection(item_of_interest): print(item)
n_other_items=n_other_items+1