Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
211 changes: 103 additions & 108 deletions chapter1.ipynb

Large diffs are not rendered by default.

32 changes: 16 additions & 16 deletions chapter10.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@
"id": "initial_id",
"outputId": "0c5e43f5-f0a1-4982-90c6-9dc4633ba185",
"ExecuteTime": {
"end_time": "2025-06-16T23:00:34.134200Z",
"start_time": "2025-06-16T23:00:34.006653Z"
"end_time": "2025-06-17T05:37:24.272182Z",
"start_time": "2025-06-17T05:37:24.143048Z"
}
},
"source": [
Expand Down Expand Up @@ -81,8 +81,8 @@
"id": "mHqZBS2rFjCg",
"outputId": "17e80eff-b3d3-4ebc-fc25-6535201fd52a",
"ExecuteTime": {
"end_time": "2025-06-16T23:00:34.404585Z",
"start_time": "2025-06-16T23:00:34.238944Z"
"end_time": "2025-06-17T05:37:24.539704Z",
"start_time": "2025-06-17T05:37:24.404052Z"
}
},
"id": "mHqZBS2rFjCg",
Expand Down Expand Up @@ -176,8 +176,8 @@
"id": "xHIfupwWF4HO",
"outputId": "aabb1fd5-8d10-4deb-a1c2-d162bd348a19",
"ExecuteTime": {
"end_time": "2025-06-16T23:01:25.248067Z",
"start_time": "2025-06-16T23:00:34.413747Z"
"end_time": "2025-06-17T05:38:13.912737Z",
"start_time": "2025-06-17T05:37:24.547327Z"
}
},
"id": "xHIfupwWF4HO",
Expand All @@ -188,9 +188,9 @@
"text": [
"High Utility patterns were generated successfully using EFIM algorithm\n",
"# patterns: 5968\n",
"Runtime: 49.29777693748474\n",
"Memory (RSS): 163725312\n",
"Memory (USS): 157106176\n"
"Runtime: 46.482388973236084\n",
"Memory (RSS): 105791488\n",
"Memory (USS): 82673664\n"
]
}
],
Expand Down Expand Up @@ -275,8 +275,8 @@
"base_uri": "https://localhost:8080/"
},
"ExecuteTime": {
"end_time": "2025-06-16T23:01:46.658171Z",
"start_time": "2025-06-16T23:01:25.291798Z"
"end_time": "2025-06-17T05:38:34.434937Z",
"start_time": "2025-06-17T05:38:14.012435Z"
}
},
"id": "9hArhengGQz4",
Expand All @@ -287,9 +287,9 @@
"text": [
"High Utility Frequent patterns were generated successfully using HUFIM algorithm\n",
"Total No of patterns: 382\n",
"Runtime: 21.242650747299194\n",
"Memory (RSS): 93847552\n",
"Memory (USS): 87343104\n"
"Runtime: 20.1909601688385\n",
"Memory (RSS): 94175232\n",
"Memory (USS): 88244224\n"
]
}
],
Expand All @@ -301,8 +301,8 @@
"metadata": {
"id": "DsdPQENx-3TE",
"ExecuteTime": {
"end_time": "2025-06-16T23:01:46.760148Z",
"start_time": "2025-06-16T23:01:46.758816Z"
"end_time": "2025-06-17T05:38:34.452861Z",
"start_time": "2025-06-17T05:38:34.448293Z"
}
},
"id": "DsdPQENx-3TE",
Expand Down
142 changes: 77 additions & 65 deletions chapter11.ipynb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion chapter12.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
"import PAMI.sequentialPattern.basic.GSP as alg\n",
"\n",
"# minSup not defined in book\n",
"\n",
"minSup = 1,000,000,000 # Example value, adjust as needed\n",
"obj = alg.GSP('airDatabase.txt', minSup,'\\t')\n",
"obj.mine()\n",
"#Retrievediscoveredpatternsandresourceusage\n",
Expand Down
207 changes: 152 additions & 55 deletions chapter13.ipynb

Large diffs are not rendered by default.

101 changes: 33 additions & 68 deletions chapter15.ipynb
Original file line number Diff line number Diff line change
@@ -1,17 +1,5 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"id": "initial_id",
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
""
]
},
{
"metadata": {},
"cell_type": "markdown",
Expand All @@ -21,8 +9,8 @@
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-06-17T00:13:27.432688Z",
"start_time": "2025-06-17T00:13:27.350964Z"
"end_time": "2025-06-17T08:35:45.985667Z",
"start_time": "2025-06-17T08:35:43.883478Z"
}
},
"cell_type": "code",
Expand All @@ -33,8 +21,7 @@
"databaseSize=100000,\n",
"avgItemsPerTransaction=10,\n",
"numItems=1000,\n",
"sep=\n",
"'\\t'\n",
"sep='\\t'\n",
")\n",
"obj.create()\n",
"obj.save('uncertainTDB.csv')\n",
Expand All @@ -48,14 +35,12 @@
"id": "794e188ab8e46bce",
"outputs": [
{
"ename": "ImportError",
"evalue": "cannot import name 'UncertainTransactionalDatabase' from 'PAMI.extras.syntheticDataGenerator' (/Users/tarunsreepada/PycharmProjects/PAMI/PAMI/extras/syntheticDataGenerator/__init__.py)",
"output_type": "error",
"traceback": [
"\u001B[31m---------------------------------------------------------------------------\u001B[39m",
"\u001B[31mImportError\u001B[39m Traceback (most recent call last)",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[1]\u001B[39m\u001B[32m, line 1\u001B[39m\n\u001B[32m----> \u001B[39m\u001B[32m1\u001B[39m \u001B[38;5;28;01mfrom\u001B[39;00m\u001B[38;5;250m \u001B[39m\u001B[34;01mPAMI\u001B[39;00m\u001B[34;01m.\u001B[39;00m\u001B[34;01mextras\u001B[39;00m\u001B[34;01m.\u001B[39;00m\u001B[34;01msyntheticDataGenerator\u001B[39;00m\u001B[38;5;250m \u001B[39m\u001B[38;5;28;01mimport\u001B[39;00m UncertainTransactionalDatabase \u001B[38;5;28;01mas\u001B[39;00m db\n\u001B[32m 3\u001B[39m obj = db.UncertainTransactionalDatabase(\n\u001B[32m 4\u001B[39m databaseSize=\u001B[32m100000\u001B[39m,\n\u001B[32m 5\u001B[39m avgItemsPerTransaction=\u001B[32m10\u001B[39m,\n\u001B[32m (...)\u001B[39m\u001B[32m 8\u001B[39m \u001B[33m'\u001B[39m\u001B[38;5;130;01m\\t\u001B[39;00m\u001B[33m'\u001B[39m\n\u001B[32m 9\u001B[39m )\n\u001B[32m 10\u001B[39m obj.create()\n",
"\u001B[31mImportError\u001B[39m: cannot import name 'UncertainTransactionalDatabase' from 'PAMI.extras.syntheticDataGenerator' (/Users/tarunsreepada/PycharmProjects/PAMI/PAMI/extras/syntheticDataGenerator/__init__.py)"
"name": "stdout",
"output_type": "stream",
"text": [
"Runtime:1.8344180583953857\n",
"Memory (RSS):132005888\n",
"Memory (USS):108625920\n"
]
}
],
Expand All @@ -64,8 +49,8 @@
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-06-17T00:17:37.806908Z",
"start_time": "2025-06-17T00:17:37.325235Z"
"end_time": "2025-06-17T08:22:46.048639Z",
"start_time": "2025-06-17T08:22:46.028210Z"
}
},
"cell_type": "code",
Expand All @@ -87,8 +72,6 @@
" thresholdValue=0.6\n",
")\n",
"\n",
"\n",
"\n",
"# Print runtime and memory usage statistics\n",
"print('Runtime: ', obj.getRuntime())\n",
"print('Memory (RSS):', obj.getMemoryRSS())\n",
Expand All @@ -111,16 +94,16 @@
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-06-17T00:24:12.258499Z",
"start_time": "2025-06-17T00:24:11.335605Z"
"end_time": "2025-06-17T08:36:23.058323Z",
"start_time": "2025-06-17T08:36:15.085550Z"
}
},
"cell_type": "code",
"source": [
"from PAMI.extras.dbStats import \\\n",
"UncertainTransactionalDatabase as stat\n",
"#Loadtheuncertaintransactionaldatabase\n",
"obj = stat.UncertainTransactionalDatabase(\"UTDB.csv\")\n",
"obj = stat.UncertainTransactionalDatabase(\"uncertainTDB.csv\")\n",
"#Runthestatisticsgeneration\n",
"obj.run()\n",
"#Printthecalculatedstatistics\n",
Expand All @@ -134,52 +117,38 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Database size (total no of transactions) : 84\n",
"Number of items : 4\n",
"Database size (total no of transactions) : 100000\n",
"Number of items : 1000\n",
"Minimum Transaction Size : 1\n",
"Average Transaction Size : 1.8095238095238095\n",
"Maximum Transaction Size : 4\n",
"Standard Deviation Transaction Size : 0.7939681905015746\n",
"Variance in Transaction Sizes : 0.6379804934021801\n",
"Sparsity : 0.5476190476190477\n"
]
},
{
"ename": "TypeError",
"evalue": "unsupported operand type(s) for /: 'str' and 'int'",
"output_type": "error",
"traceback": [
"\u001B[31m---------------------------------------------------------------------------\u001B[39m",
"\u001B[31mTypeError\u001B[39m Traceback (most recent call last)",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[3]\u001B[39m\u001B[32m, line 10\u001B[39m\n\u001B[32m 8\u001B[39m obj.printStats()\n\u001B[32m 9\u001B[39m \u001B[38;5;66;03m#Plotgraphicalrepresentationsofthestatistics\u001B[39;00m\n\u001B[32m---> \u001B[39m\u001B[32m10\u001B[39m \u001B[43mobj\u001B[49m\u001B[43m.\u001B[49m\u001B[43mplotGraphs\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\n",
"\u001B[36mFile \u001B[39m\u001B[32m~/PycharmProjects/PAMI/PAMI/extras/dbStats/UncertainTransactionalDatabase.py:323\u001B[39m, in \u001B[36mUncertainTransactionalDatabase.plotGraphs\u001B[39m\u001B[34m(self)\u001B[39m\n\u001B[32m 321\u001B[39m itemFrequencies = \u001B[38;5;28mself\u001B[39m.getFrequenciesInRange()\n\u001B[32m 322\u001B[39m transactionLength = \u001B[38;5;28mself\u001B[39m.getTransanctionalLengthDistribution()\n\u001B[32m--> \u001B[39m\u001B[32m323\u001B[39m \u001B[43mplt\u001B[49m\u001B[43m.\u001B[49m\u001B[43mplotLineGraphFromDictionary\u001B[49m\u001B[43m(\u001B[49m\u001B[43mitemFrequencies\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[32;43m100\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m'\u001B[39;49m\u001B[33;43mFrequency\u001B[39;49m\u001B[33;43m'\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m'\u001B[39;49m\u001B[33;43mNo of items\u001B[39;49m\u001B[33;43m'\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m'\u001B[39;49m\u001B[33;43mfrequency\u001B[39;49m\u001B[33;43m'\u001B[39;49m\u001B[43m)\u001B[49m\n\u001B[32m 324\u001B[39m plt.plotLineGraphFromDictionary(transactionLength, \u001B[32m100\u001B[39m, \u001B[33m'\u001B[39m\u001B[33mtransaction length\u001B[39m\u001B[33m'\u001B[39m, \u001B[33m'\u001B[39m\u001B[33mtransaction length\u001B[39m\u001B[33m'\u001B[39m, \u001B[33m'\u001B[39m\u001B[33mfrequency\u001B[39m\u001B[33m'\u001B[39m)\n",
"\u001B[36mFile \u001B[39m\u001B[32m~/PycharmProjects/PAMI/PAMI/extras/graph/plotLineGraphFromDictionary.py:77\u001B[39m, in \u001B[36mplotLineGraphFromDictionary.__init__\u001B[39m\u001B[34m(self, data, end, start, title, xlabel, ylabel)\u001B[39m\n\u001B[32m 61\u001B[39m \u001B[38;5;250m\u001B[39m\u001B[33;03m\"\"\"\u001B[39;00m\n\u001B[32m 62\u001B[39m \u001B[33;03mdraw line graph. Plot the input data key as x and value as y\u001B[39;00m\n\u001B[32m 63\u001B[39m \n\u001B[32m (...)\u001B[39m\u001B[32m 74\u001B[39m \u001B[33;03m:return: None\u001B[39;00m\n\u001B[32m 75\u001B[39m \u001B[33;03m\"\"\"\u001B[39;00m\n\u001B[32m 76\u001B[39m end = \u001B[38;5;28mint\u001B[39m(\u001B[38;5;28mlen\u001B[39m(data) * end / \u001B[32m100\u001B[39m)\n\u001B[32m---> \u001B[39m\u001B[32m77\u001B[39m start = \u001B[38;5;28mint\u001B[39m(\u001B[38;5;28;43mlen\u001B[39;49m\u001B[43m(\u001B[49m\u001B[43mdata\u001B[49m\u001B[43m)\u001B[49m\u001B[43m \u001B[49m\u001B[43m*\u001B[49m\u001B[43m \u001B[49m\u001B[43mstart\u001B[49m\u001B[43m \u001B[49m\u001B[43m/\u001B[49m\u001B[43m \u001B[49m\u001B[32;43m100\u001B[39;49m)\n\u001B[32m 78\u001B[39m x = \u001B[38;5;28mlist\u001B[39m(\u001B[38;5;28mrange\u001B[39m(\u001B[38;5;28mlen\u001B[39m(data)))\n\u001B[32m 79\u001B[39m y = \u001B[38;5;28mlist\u001B[39m(\u001B[38;5;28mtuple\u001B[39m(data.values())[start:end])\n",
"\u001B[31mTypeError\u001B[39m: unsupported operand type(s) for /: 'str' and 'int'"
"Average Transaction Size : 10.01164\n",
"Maximum Transaction Size : 28\n",
"Standard Deviation Transaction Size : 3.1718834326626824\n",
"Variance in Transaction Sizes : 10.060945119851198\n"
]
}
],
"execution_count": 3
"execution_count": null
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-06-17T00:27:11.410829Z",
"start_time": "2025-06-17T00:27:11.343648Z"
"end_time": "2025-06-17T08:36:01.891371Z",
"start_time": "2025-06-17T08:35:51.759721Z"
}
},
"cell_type": "code",
"source": [
"import PAMI.uncertainFrequentPattern.basic.TubeP as alg\n",
"\n",
"# Input file and minimum support count for frequent pattern mining\n",
"inputFile = 'UTDB.csv'\n",
"inputFile = 'uncertainTDB.csv'\n",
"minSupport = 100\n",
"\n",
"# Create an instance of the TubeP algorithm\n",
"obj = alg.TUFP(iFile=inputFile, minSup=minSupport, sep='\\t')\n",
"obj = alg.TubeP(iFile=inputFile, minSup=minSupport, sep='\\t')\n",
"\n",
"# Mine frequent patterns\n",
"obj.mine()\n",
"obj.startMine()\n",
"\n",
"# Save the discovered frequent patterns to a file\n",
"obj.save('frequentPatterns.txt')\n",
Expand All @@ -194,20 +163,16 @@
"id": "1775d50bcb12fb41",
"outputs": [
{
"ename": "ValueError",
"evalue": "substring not found",
"output_type": "error",
"traceback": [
"\u001B[31m---------------------------------------------------------------------------\u001B[39m",
"\u001B[31mValueError\u001B[39m Traceback (most recent call last)",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[9]\u001B[39m\u001B[32m, line 11\u001B[39m\n\u001B[32m 8\u001B[39m obj = alg.TUFP(iFile=inputFile, minSup=minSupport, sep=\u001B[33m'\u001B[39m\u001B[38;5;130;01m\\t\u001B[39;00m\u001B[33m'\u001B[39m)\n\u001B[32m 10\u001B[39m \u001B[38;5;66;03m# Mine frequent patterns\u001B[39;00m\n\u001B[32m---> \u001B[39m\u001B[32m11\u001B[39m \u001B[43mobj\u001B[49m\u001B[43m.\u001B[49m\u001B[43mmine\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 13\u001B[39m \u001B[38;5;66;03m# Save the discovered frequent patterns to a file\u001B[39;00m\n\u001B[32m 14\u001B[39m obj.save(\u001B[33m'\u001B[39m\u001B[33mfrequentPatterns.txt\u001B[39m\u001B[33m'\u001B[39m)\n",
"\u001B[36mFile \u001B[39m\u001B[32m~/PycharmProjects/PAMI/PAMI/uncertainFrequentPattern/basic/TubeP.py:440\u001B[39m, in \u001B[36mTUFP.mine\u001B[39m\u001B[34m(self)\u001B[39m\n\u001B[32m 438\u001B[39m \u001B[38;5;28;01mglobal\u001B[39;00m _minSup\n\u001B[32m 439\u001B[39m \u001B[38;5;28mself\u001B[39m._startTime = _ab._time.time()\n\u001B[32m--> \u001B[39m\u001B[32m440\u001B[39m \u001B[38;5;28;43mself\u001B[39;49m\u001B[43m.\u001B[49m\u001B[43m_creatingItemSets\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 441\u001B[39m \u001B[38;5;28mself\u001B[39m._minSup = \u001B[38;5;28mself\u001B[39m._convert(\u001B[38;5;28mself\u001B[39m._minSup)\n\u001B[32m 442\u001B[39m _minSup = \u001B[38;5;28mself\u001B[39m._minSup\n",
"\u001B[36mFile \u001B[39m\u001B[32m~/PycharmProjects/PAMI/PAMI/uncertainFrequentPattern/basic/TubeP.py:294\u001B[39m, in \u001B[36mTUFP._creatingItemSets\u001B[39m\u001B[34m(self)\u001B[39m\n\u001B[32m 292\u001B[39m tr = []\n\u001B[32m 293\u001B[39m \u001B[38;5;28;01mfor\u001B[39;00m i \u001B[38;5;129;01min\u001B[39;00m temp:\n\u001B[32m--> \u001B[39m\u001B[32m294\u001B[39m i1 = \u001B[43mi\u001B[49m\u001B[43m.\u001B[49m\u001B[43mindex\u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m'\u001B[39;49m\u001B[33;43m(\u001B[39;49m\u001B[33;43m'\u001B[39;49m\u001B[43m)\u001B[49m\n\u001B[32m 295\u001B[39m i2 = i.index(\u001B[33m'\u001B[39m\u001B[33m)\u001B[39m\u001B[33m'\u001B[39m)\n\u001B[32m 296\u001B[39m item = i[\u001B[32m0\u001B[39m:i1]\n",
"\u001B[31mValueError\u001B[39m: substring not found"
"name": "stdout",
"output_type": "stream",
"text": [
"Uncertain Frequent patterns were generated successfully using TubeP algorithm\n",
"#Patterns: 1000\n",
"Runtime: 9.753803968429565\n"
]
}
],
"execution_count": 9
"execution_count": 2
},
{
"metadata": {},
Expand Down
Loading