{ "cells": [ { "cell_type": "code", "execution_count": 19, "id": "57898e7a-3172-4649-8977-d92da5cda6d1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "================================================================================\n", "SYNTHETIC DATA GENERATION - Fixed Version\n", "================================================================================\n", "\n", "šŸ“Š Generating synthetic customer feedback for a fitness tracking app...\n", "āœ… Generated 500 feedback entries\n", "\n", "First 5 feedback samples:\n", "--------------------------------------------------------------------------------\n", "Rating: 3ā˜… | Would be nice if it could write notes in my phone about my form like M...\n", "Rating: 5ā˜… | Best fitness app, would be even better if it could keep a paper journa...\n", "Rating: 5ā˜… | Please fix use Excel to track my custom exercises...\n", "Rating: 4ā˜… | 5 stars if you could show progress over time clearly...\n", "Rating: 3ā˜… | Works fine but I always use Excel to track my custom exercises before ...\n", "--------------------------------------------------------------------------------\n", "\n", "DataFrame shape: (500, 6)\n", "Columns: ['feedback_id', 'date', 'rating', 'text', 'user_type', 'platform']\n", "\n", "šŸ’¾ Saving data for inspection...\n", "First 10 rows of generated data:\n", " rating text\n", "0 3 Would be nice if it could write notes in my ph...\n", "1 5 Best fitness app, would be even better if it c...\n", "2 5 Please fix use Excel to track my custom exercises\n", "3 4 5 stars if you could show progress over time c...\n", "4 3 Works fine but I always use Excel to track my ...\n", "5 3 Love it, but please add ability to use Excel t...\n", "6 4 The biggest problem is export my data\n", "7 5 The biggest problem is keep a paper journal fo...\n", "8 3 Please add work offline at the gym\n", "9 4 Love the app but use Excel to track my custom ...\n", "\n", "šŸ“Š Basic Statistics:\n", "Average rating: 3.78\n", "Rating distribution:\n", "1 19\n", "2 45\n", "3 100\n", "4 198\n", "5 138\n", "Name: rating, dtype: int64\n", "\n", "================================================================================\n", "ANALYSIS PHASE 1: Finding Workarounds\n", "================================================================================\n", "\n", "šŸ” Detecting customer workarounds...\n", "\n", "Top customer workarounds detected:\n", " 1. 'manually calculate my' - mentioned 20 times\n", " 2. 'screenshot my progress' - mentioned 19 times\n", " 3. 'set phone reminders' - mentioned 16 times\n", " 4. 'keep a paper' - mentioned 16 times\n", " 5. 'use excel to' - mentioned 13 times\n", "\n", "================================================================================\n", "ANALYSIS PHASE 2: Finding Hidden Feature Requests\n", "================================================================================\n", "\n", "šŸŽÆ Mining for implicit feature requests...\n", "\n", "Top implicit feature requests:\n", " 1. 'ability to create custom exercises' - 9 mentions\n", " 2. 'suggest rest when needed' - 8 mentions\n", " 3. 'export my data' - 7 mentions\n", " 4. 'show progress over time clearly' - 7 mentions\n", " 5. 'sync with my calendar' - 6 mentions\n", "\n", "================================================================================\n", "ANALYSIS PHASE 3: Simple Sentiment Analysis\n", "================================================================================\n", "\n", "šŸŽ­ Analyzing sentiment...\n", "\n", "Sentiment Distribution:\n", "neutral 312\n", "positive 137\n", "negative 51\n", "Name: sentiment, dtype: int64\n", "\n", "Sentiment by Rating:\n", "sentiment negative neutral positive\n", "rating \n", "1 2 12 5\n", "2 3 31 11\n", "3 10 62 28\n", "4 21 125 52\n", "5 15 82 41\n", "\n", "================================================================================\n", "KEY INSIGHTS DISCOVERED\n", "================================================================================\n", "\n", "šŸŽÆ What We Found in the Synthetic Data:\n", "\n", "1. WORKAROUNDS reveal missing features\n", " - Users shouldn't have to use Excel for tracking\n", " - Screenshot workarounds = need for progress visualization\n", " \n", "2. WISHES show desired improvements \n", " - Direct feature requests hidden in feedback\n", " - Comparisons to competitors reveal gaps\n", " \n", "3. SENTIMENT shows satisfaction isn't binary\n", " - Even positive reviews contain complaints\n", " - Frustration points exist at all rating levels\n", "\n", "šŸ“ Your Action Items:\n", " 1. Address the top workarounds first (biggest pain points)\n", " 2. Implement wished-for features (competitive advantage)\n", " 3. Fix issues causing negative sentiment (retention)\n", "\n", "\n", "šŸ“Š Creating visualization...\n" ] }, { "data": { "image/png": "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261qomZ2HJ5SUuzBQURERERUjv73v/9hwoQJyMjIgCiKuHjxIrZt24aFCxfil19+kTpeibSsyQJHSehrK3DKdRPsnh2VOork2j38B7vMauATVw9cTXwodZxKhT04So4FDiIiIiKicjRy5Ejk5OTgk08+QVpaGoYMGQJHR0d8//33GDRokNTxSqSRoxksDHXxMjVL6igaQ19bgUCXDbB9dlzqKJWGXcIz/HbjOVY28sNvCbcKHLJS3VjrW8PFpGrdWroicYgKEREREVE5Sk9Px9ChQ/HkyRPExMTg/PnzmDp1KhwdHaWOVmJaWgLedreSOobGMNRW4rTLethGsrjxKh1lDqZcPYjVWg6wkJtJHUdyze2aSx1Bo7HAQURERERUjnr37o2NGzcCAHR0dNCrVy8sXboUffr0wZo1ayROV3Lt69pIHUEjGOoocNrlF9hEnpA6SqXW5lEQdkW9QFNTd6mjSKq9U3upI2g0FjiIiIiIiMrRlStX0LZtWwDA77//DltbWzx58gQbN27EDz/8IHG6kvOtYwMdLeHNDasxI50cnHH6BVaRgVJH0Qg2iVH49XogPjD1gpZQ/b6q6mrpoq1jW6ljlImAgAA0bty4ws9b/f7WEBERERFVoLS0NBgbGwMAjh49in79+kFLSwstW7bEkydPJE5XcqYGMrRw42SjhTHWycEZx59gGXVa6igaRVtUYNK1g1gr2sBSbi51nArV0qElDGWGUscoNkEQsHfvXrV1M2bMwIkTFd9riQUOIiIiIqJyVLt2bezduxcRERE4cuQIunTpAgCIiYmBiYmJxOlKp0t9W6kjVEqmshyccfwRFtF/Sx1FY7UKvYjfn0XjLdM6UkepMB2dO0odocwYGRnB0tKyws9b6Qscrq6uEAQh32PChAkAAH9//3zbWrZsKXFqIiIiIqJcX375JWbMmAFXV1e89dZbaNWqFYDc3hze3t4Spyud7g0doM1hKmrMZTk447Aa5tH/SB1F41klP8dP109ifDUYsqKjpVPsAoevry8mT56MTz75BBYWFrCzs0NAQIBqe2JiIj744APY2NjAxMQEHTp0wPXr19WOMX/+fNjY2MDY2BhjxozBZ599pja05NKlS+jcuTOsrKxgamqKdu3a4cqVK6rtrq6uAIC+fftCEATV8n+HqBw5cgR6enpISEhQO/fkyZPRrl071fK5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ilq4cKF++uknjRo1ShkZGZKkBg0aaNasWZKy1ie59DX7b760tDR17txZLVu21Pfff3/F93j/9cMPP+j999/X//73P3399dcKDw/Xww8/rK+//jrHr/Hbb79VxYoVVb9+fVu2b7/99qrHr1mzRi1btlRcXJxmzJihBQsWyM/PT506dbIrgi7p37+/3N3d9fnnn2v8+PFavXq1HnnkkRznRAEwAOA/Ro8ebUgyTp8+fcX9NWvWNJo1a2a73bFjR6NevXrXfMy2bdsa5cqVM+Li4uzGBw0aZHh5eRnnzp0zDMMwVq1aZUgy7r777hznvnTfr776yjY2a9YsQ5KxZcsW29jff/9tSDLmzJljG+vVq5chyZg8ebLdY77xxhuGJGPdunWGYRjGn3/+aUgyJkyYYHdcdHS04e3tbbzwwgvXzHgpz4YNG656TJkyZYzq1avbbl/6+7jk66+/NiQZW7duvepjnD592pBkjB49Otu+S483atSoq+77r/DwcMNisWR7vtatWxv+/v5GYmKi3Ws7fPiw3XGX/l5WrVplG+vQoYMRHh5+xeyX5+7evbvh6elpREVF2R0XGRlp+Pj4GBcuXLB7nvbt29sd9+WXXxqSjD///POKzwcAKHwu/UxZv369kZ6ebly8eNFYvHixUapUKcPPz884efKkYRhX/hlzuYyMDCMhIcEoVqyY3c/5r7766qr3vdJ7od27dxuSjKeeesru2L/++suQZLz88su2sWbNmhmSjBUrVtgde/jwYUOSUbduXSMzM9M2PmnSJEOS0blzZ7vjhw4dakjK9v7pRvL+V3JysiHJiIyMtI316tXL7mfxu+++a0iy/Vy9kg0bNhiSjFmzZmXbd+m91MyZM6+47/Kf+5IMb29v29+lYWT9Xd1yyy1G5cqVs722y13pfcfl71EvufR1/2/u2267zShdurRx8eJFu+evVauWUa5cOcNqtdo9z+V/7+PHjzckGTExMdmeD+ZiBgeAm9K4cWNt27ZNTz31lJYsWaL4+Hi7/SkpKVqxYoXuv/9++fj4KCMjw7a1b99eKSkpWr9+vd19HnjggTzJ9vDDD6t06dJ2szimTJmiUqVKZZuZISnb+bw9evSQJK1atUqStHjxYlksFj3yyCN2ryM4OFh169bN1SrulzMM45r769WrJw8PDz3++OOaM2dOrk+NycnXuGbNmnYLk0lZX5v4+Hht3rw5V89/o1auXKl77rlHYWFhduO9e/dWUlJSttkfl35LdUmdOnUkXXs6MwCgcLrtttvk7u4uPz8/dezYUcHBwfrll19s61RdSUJCgl588UVVrlxZbm5ucnNzk6+vrxITE7V79+5cZ7n0XuDyBSwbN26s6tWra8WKFXbjJUqUUMuWLa/4WO3bt5eLy78fw6pXry4pa2bJf10aj4qKynVu6frvLSTZZrV27dpVX375pd3VanIiJ+8v7rnnHru/S1dXV3Xr1k0HDhzIdtpPXkpMTNRff/2lBx98UL6+vnbP/+ijj+rYsWPZTm/l/YXjoOAAYOfSYp5Xm9KfkZEhd3d32+0RI0bo3Xff1fr16xUZGamSJUvqnnvu0caNGyVJZ8+eVUZGhqZMmSJ3d3e7rX379pKUbVpnSEhInrwWT09PPfHEE/r888914cIFnT59Wl9++aX69++fbUV0Nzc3lSxZ0m4sODjY9hok6dSpUzIMQ2XKlMn2WtavX3/VS+veqMTERJ09e1ahoaFXPaZSpUpavny5Spcuraefftq22Orla55cT06+xpe+Dlcau/S1yS9nz569YtZLX6PLn//yv8NLf8/Jycn5lBAAkF/mzp2rDRs2aMuWLTpx4oS2b9+uO+6445r36dGjh6ZOnar+/ftryZIl+vvvv7VhwwaVKlXqpn4WXPp5c7WfSZf/PLrWz9nAwEC72x4eHtccv7SQem5d+hB+rfcXd999t7777jtlZGToscceU7ly5VSrVq0rrmV2NT4+PvL397/h4816f3H+/HkZhsH7CyfFVVQA2LnUpB8/fjzbb0gMw1BMTIzdFUDc3Nw0bNgwDRs2TBcuXNDy5cv18ssvq23btoqOjlaJEiVsjfjTTz99xeeMiIiwu321hS5zY+DAgXrrrbc0c+ZMpaSkKCMjw+7yspdkZGTo7Nmzdj/ATp48KenfH2pBQUGyWCz67bffrnjJuJu9jNxPP/2kzMzM617a9a677tJdd92lzMxMbdy4UVOmTNHQoUNVpkwZde/e/YaeKydf40tfhyuNXfraeHl5SZJSU1PtjrvZ0qdkyZKKiYnJNn5pYa//rhYPAHAu1atXt3vPcT1xcXFavHixRo8erZdeesk2npqaqnPnzt1Ulks/72JiYrJdcezEiRPZfh7l5XuZm/XDDz9Iuv6l4++9917de++9Sk1N1fr16zVu3Dj16NFDFSpU0O23337d58npa87p+4v/vs+6mfcXJUqUkIuLC+8vnBQzOADYadmypSwWyxUXWPr1118VHx+vVq1aXfG+xYsX14MPPqinn35a586d05EjR+Tj46MWLVpoy5YtqlOnjho1apRtu7wVz0shISF66KGH9OGHH+qjjz5Sp06dVL58+SseO3/+fLvbn3/+uaR/3xB07NhRhmHo+PHjV3wdtWvXznXOqKgoDR8+XAEBAXriiSdu6D6urq5q0qSJ7RScS6eL5PVvFXbt2qVt27bZjX3++efy8/NTgwYNJMm2Uvn27dvtjrv0puq/PD09bzjbPffco5UrV2ZbqXzu3Lny8fHhsm8AABuLxSLDMLL9wmH69OnZZqbm9GflpdNN5s2bZze+YcMG7d6923bFkMJm27ZtevPNN1WhQgV17dr1hu7j6empZs2a6e2335YkbdmyxTYu5d37ixUrVtgt0J6ZmakvvvhClSpVspVIV3t/8eOPP14x941kK1asmJo0aaJFixbZHW+1WjVv3jyVK1dOVatWzc1LQiHADA4AdipVqqRBgwbpnXfe0YULF9S+fXt5e3trw4YNeuutt9SoUSPb2hSS1KlTJ9t16kuVKqWjR49q0qRJCg8PV5UqVSRJkydP1p133qm77rpLAwcOVIUKFXTx4kUdOHBAP/74o1auXJmvr2nIkCFq0qSJJNlWAL+ch4eHJkyYoISEBN166636448/9PrrrysyMlJ33nmnJOmOO+7Q448/rj59+mjjxo26++67VaxYMcXExGjdunWqXbu2Bg4ceN08O3futK3fERsbq99++02zZs2Sq6urvv3222uuDv/RRx9p5cqV6tChg8qXL6+UlBTNnDlTkmzFk5+fn8LDw/X999/rnnvuUWBgoIKCgq56ibbrCQ0NVefOnTVmzBiFhIRo3rx5WrZsmd5++235+PhIyjp3t1q1aho+fLgyMjJUokQJffvtt1q3bl22x6tdu7YWLVqkadOmqWHDhnJxcbnqb+hGjx6txYsXq0WLFho1apQCAwM1f/58/fTTTxo/frwCAgJy9ZoAAM7H399fd999t9555x3bz701a9ZoxowZKl68uN2xtWrVkiR98skn8vPzk5eXlyIiIq76S5dq1arp8ccf15QpU+Ti4qLIyEgdOXJEI0eOVFhYmJ59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++YyDEMXL15UaGio2VEAAMhzDl9wXHJ5MWEYxlXLCk9PT3l6etqNFS9ePL+i4Qb4+/vzRhdFEt/7KKr43jdPQECA2REAAMgXDr/IaFBQkFxdXbPN1oiNjc02qwMAAAAAADgnhy84PDw81LBhQy1btsxufNmyZWratKlJqQAAAAAAQEFyilNUhg0bpkcffVSNGjXS7bffrk8++URRUVF68sknzY6G6/D09NTo0aOznTIEODu+91FU8b0PAADyi8NfReWSDz/8UOPHj1dMTIxq1aqliRMn6u677zY7FgAAAAAAKABOU3AAAAAAAICiy+HX4AAAAAAAAKDgAAAAAAAADo+CAwAAAAAAODwKDgAAAAAA4PAoOAAAAAAAgMOj4AAAAAAAAA7PzewAKHrS09NVrVo1LV68WDVq1DA7DlDgfvvtN3388cc6ePCgvv76a5UtW1afffaZIiIidOedd5odD8gT9evXl8ViuaFjN2/enM9pAABAUcAMDhQ4d3d3paam3vAbX8CZfPPNN2rbtq28vb21ZcsWpaamSpIuXryoN9980+R0QN657777dO+99+ree+9V27ZtdfDgQXl6eqp58+Zq3ry5vLy8dPDgQbVt29bsqAAAwElYDMMwzA6Bouett97Snj17NH36dLm5MZEIRUf9+vX17LPP6rHHHpOfn5+2bdumihUrauvWrWrXrp1OnjxpdkQgz/Xv318hISF67bXX7MZHjx6t6OhozZw506RkAADAmVBwwBT333+/VqxYIV9fX9WuXVvFihWz279o0SKTkgH5y8fHR//8848qVKhgV3AcOnRINWrUUEpKitkRgTwXEBCgjRs3qkqVKnbj+/fvV6NGjRQXF2dSMgAA4Ez41TlMUbx4cT3wwANmxwAKXEhIiA4cOKAKFSrYja9bt04VK1Y0JxSQz7y9vbVu3bpsBce6devk5eVlUioAAOBsKDhgilmzZpkdATDFE088oSFDhmjmzJmyWCw6ceKE/vzzTw0fPlyjRo0yOx6QL4YOHaqBAwdq06ZNuu222yRJ69ev18yZM/m+BwAAeYZTVGCajIwMrV69WgcPHlSPHj3k5+enEydOyN/fX76+vmbHA/LNK6+8ookTJ9pOR/H09NTw4cOzrU8AOJMvv/xSkydP1u7duyVJ1atX15AhQ9S1a1eTkwEAAGdBwQFTHD16VO3atVNUVJRSU1O1b98+VaxYUUOHDlVKSoo++ugjsyMC+SopKUn//POPrFaratSoQakHAAAA3CQuEwtTDBkyRI0aNdL58+fl7e1tG7+0+CjgrPr27auLFy/Kx8dHjRo1UuPGjeXr66vExET17dvX7HhAvrlw4YKmT5+ul19+WefOnZMkbd68WcePHzc5GQAAcBbM4IApgoKC9Pvvv6tatWp2V5I4cuSIatSooaSkJLMjAvnC1dVVMTExKl26tN34mTNnFBwcrIyMDJOSAfln+/btatWqlQICAnTkyBHt3btXFStW1MiRI3X06FHNnTvX7IgAAMAJMIMDprBarcrMzMw2fuzYMfn5+ZmQCMhf8fHxiouLk2EYunjxouLj423b+fPn9fPPP2crPQBnMWzYMPXu3Vv79++3u2pKZGSk1q5da2IyAADgTLiKCkzRunVrTZo0SZ988okkyWKxKCEhQaNHj1b79u1NTgfkveLFi8tischisahq1arZ9lssFo0dO9aEZED+27Bhgz7++ONs42XLltXJkydNSAQAAJwRBQdMMXHiRLVo0UI1atRQSkqKevToof379ysoKEgLFiwwOx6Q51atWiXDMNSyZUt98803CgwMtO3z8PBQeHi4QkNDTUwI5B8vLy/Fx8dnG9+7d69KlSplQiIAAOCMWIMDpklOTtaCBQu0efNmWa1WNWjQQD179rRbdBRwNkePHlVYWJhcXDhDEEXH448/rtOnT+vLL79UYGCgtm/fLldXV9133326++67NWnSJLMjAgAAJ0DBAQAmSEpKUlRUlNLS0uzG69SpY1IiIP/Ex8erffv22rVrly5evKjQ0FCdPHlSt99+u37++WcVK1bM7IgAAMAJUHDANPv27dPq1asVGxsrq9Vqt2/UqFEmpQLy1+nTp9WnTx/98ssvV9x/pcV3AWexcuVKu1l7rVq1MjsSAABwIhQcMMWnn36qgQMHKigoSMHBwbJYLLZ9FotFmzdvNjEdkH969uypI0eOaNKkSWrRooW+/fZbnTp1Sq+//romTJigDh06mB0RAAAAcEgUHDBFeHi4nnrqKb344otmRwEKVEhIiL7//ns1btxY/v7+2rhxo6pWraoffvhB48eP17p168yOCOS5wYMHq3Llyho8eLDd+NSpU3XgwAHW4AAAAHmCVe5givPnz+uhhx4yOwZQ4BITE1W6dGlJUmBgoE6fPi1Jql27NjOX4LS++eYb3XHHHdnGmzZtqq+//tqERAAAwBlRcMAUDz30kJYuXWp2DKDAVatWTXv37pUk1atXTx9//LGOHz+ujz76SCEhISanA/LH2bNnFRAQkG3c399fZ86cMSERAABwRm5mB0DRVLlyZY0cOVLr169X7dq15e7ubrf/8mnMgLMYOnSoYmJiJEmjR49W27ZtNX/+fHl4eGj27NnmhgPySeXKlfXrr79q0KBBduO//PKLKlasaFIqAADgbFiDA6aIiIi46j6LxaJDhw4VYBrAPElJSdqzZ4/Kly+voKAgs+MA+WLmzJkaNGiQnn/+ebVs2VKStGLFCk2YMEGTJk3SgAEDTE4IAACcAQUHAADId9OmTdMbb7yhEydOSJIqVKigMWPG6LHHHjM5GQAAcBYUHACQz4YNG6bXXntNxYoV07Bhw6557HvvvVdAqQBznD59Wt7e3vL19TU7CgAAcDKswQFTZGZmavbs2VqxYoViY2NltVrt9q9cudKkZEDe27Jli9LT021/vhqLxVJQkQDTlCpVyuwIAADASTGDA6YYNGiQZs+erQ4dOigkJCTbB7uJEyealAwAkNdOnTql4cOH20rty996ZGZmmpQMAAA4EwoOmCIoKEhz585V+/btzY4CAMhnkZGRioqK0qBBg65Yat97770mJQMAAM6EU1RgCg8PD1WuXNnsGECB6NKlyw0fu2jRonxMAphj3bp1+u2331SvXj2zowAAACfmYnYAFE3PPfecJk+enG2aMuCMAgICbJu/v79WrFihjRs32vZv2rRJK1asUEBAgIkpgfwTFhbGv/cAACDfcYoKTHH//fdr1apVCgwMVM2aNeXu7m63n99iw1m9+OKLOnfunD766CO5urpKylp/4KmnnpK/v7/eeecdkxMCeW/p0qWaMGGCPv74Y1WoUMHsOAAAwElRcMAUffr0ueb+WbNmFVASoGCVKlVK69atU7Vq1ezG9+7dq6ZNm+rs2bMmJQPyT4kSJZSUlKSMjAz5+PhkK7XPnTtnUjIAAOBMWIMDpqDAQFGVkZGh3bt3Zys4du/ene1yyYCzmDRpktkRAABAEUDBAQAFqE+fPurbt68OHDig2267TZK0fv16vfXWW9ed2QQ4ql69epkdAQAAFAGcooIC06BBA61YsUIlSpRQ/fr1s10m8L82b95cgMmAgmO1WvXuu+9q8uTJiomJkSSFhIRoyJAheu6552zrcgDOKjk5Wenp6XZj/v7+JqUBAADOhBkcKDD33nuvPD09JUn33XefuWEAk7i4uOiFF17QCy+8oPj4eEl8uIPzS0xM1Isvvqgvv/zyiuvMZGZmmpAKAAA4G2ZwAEABy8jI0OrVq3Xw4EH16NFDfn5+OnHihPz9/eXr62t2PCDPPf3001q1apX+97//6bHHHtMHH3yg48eP6+OPP9Zbb72lnj17mh0RAAA4AQoOAChAR48eVbt27RQVFaXU1FTt27dPFStW1NChQ5WSkqKPPvrI7IhAnitfvrzmzp2r5s2by9/fX5s3b1blypX12WefacGCBfr555/NjggAAJyAi9kBUDSVKFFCgYGB2baSJUuqbNmyatasGVdagVMaMmSIGjVqpPPnz8vb29s2fv/992vFihUmJgPyz7lz5xQRESEp65SsS5eFvfPOO7V27VozowEAACfCGhwwxahRo/TGG28oMjJSjRs3lmEY2rBhg3799Vc9/fTTOnz4sAYOHKiMjAwNGDDA7LhAnlm3bp1+//13eXh42I2Hh4fr+PHjJqUC8lfFihV15MgRhYeHq0aNGvryyy/VuHFj/fjjjypevLjZ8QAAgJOg4IAp1q1bp9dff11PPvmk3fjHH3+spUuX6ptvvlGdOnX0/vvvU3DAqVit1isuqHjs2DH5+fmZkAjIf3369NG2bdvUrFkzjRgxQh06dNCUKVOUkZGh9957z+x4AADASbAGB0zh6+urrVu3qnLlynbjBw4cUL169ZSQkKCDBw+qTp06SkxMNCklkPe6deumgIAAffLJJ/Lz89P27dtVqlQp3XvvvSpfvjynZqFIiIqK0saNG1WpUiXVrVvX7DgAAMBJsAYHTBEYGKgff/wx2/iPP/6owMBASVmXFeQ32nA2EydO1Jo1a1SjRg2lpKSoR48eqlChgo4fP663337b7HhAvjhy5Ijd7fLly6tLly6UGwAAIE9xigpMMXLkSA0cOFCrVq1S48aNZbFY9Pfff+vnn3+2XUVi2bJlatasmclJgbwVGhqqrVu3asGCBdq8ebOsVqv69eunnj172i06CjiTihUrqmnTpnr00Uf10EMP2YpsAACAvMQpKjDN77//rqlTp2rv3r0yDEO33HKLnnnmGTVt2tTsaACAPLR582YtWLBACxcu1OnTp9W2bVs98sgj6ty5szw9Pc2OBwAAnAQFBwAUsOPHj+v3339XbGysrFar3b7BgweblArIf4ZhaPXq1fr888/1zTffKDMzUw888IBmzpxpdjQAAOAEKDhgmoMHD2rWrFk6dOiQJk2apNKlS+vXX39VWFiYatasaXY8IF/MmjVLTz75pDw8PFSyZElZLBbbPovFokOHDpmYDig4mzdvVr9+/bR9+/YrXlkIAAAgp1hkFKZYs2aNateurb/++kvffPONEhISJEnbt2/X6NGjTU4H5J9Ro0Zp1KhRiouL05EjR3T48GHbRrkBZxcdHa3x48erXr16uvXWW1WsWDFNnTrV7FgAAMBJUHDAFC+99JJef/11LVu2TB4eHrbxFi1a6M8//zQxGZC/kpKS1L17d7m48M8vio5PPvlEzZo1U0REhObMmaOuXbvq4MGDWrdunQYOHGh2PAAA4CQ4RQWm8PX11Y4dOxQRESE/Pz9t27ZNFStW1JEjR3TLLbcoJSXF7IhAvnjhhRcUGBiol156yewoQIEJCwtT9+7d1bNnT9WrV8/sOAAAwElxmViYonjx4oqJiVFERITd+JYtW1S2bFmTUgH5b9y4cerYsaN+/fVX1a5dW+7u7nb733vvPZOSAfknKirKbr0ZAACA/EDBAVP06NFDL774or766itZLBZZrVb9/vvvGj58uB577DGz4wH55s0339SSJUtUrVo1Scq2yCjgLLZv337Dx9apUycfkwAAgKKCU1RgivT0dPXu3VsLFy6UYRhyc3NTRkaGevbsqdmzZ8vV1dXsiEC+KFGihCZOnKjevXubHQXIVy4uLrJYLLr0NuNaBR5XUQEAAHmBggOmOnTokDZu3CiLxaL69eurcuXKZkcC8lVwcLB+++03ValSxewoQL46evSo7c9btmzR8OHD9fzzz+v222+XJP3555+aMGGCxo8fr/vuu8+klAAAwJlQcMA0M2bM0MSJE7V//35JUpUqVTR06FD179/f5GRA/hk3bpxiYmL0/vvvmx0FKDCNGzfWmDFj1L59e7vxn3/+WSNHjtSmTZtMSgYAAJwJa3DAFCNHjtTEiRP1zDPP2P0279lnn9WRI0f0+uuvm5wQyB9///23Vq5cqcWLF6tmzZrZFhldtGiRScmA/HPpqlmXi4iI0D///GNCIgAA4IyYwQFTBAUFacqUKXr44YftxhcsWKBnnnlGZ86cMSkZkL/69Olzzf2zZs0qoCRAwWnQoIGqV6+uGTNmyMvLS5KUmpqqvn37avfu3dq8ebPJCQEAgDNgBgdMkZmZqUaNGmUbb9iwoTIyMkxIBOS/jIwMNW/eXG3btlVwcLDZcYAC89FHH6lTp04KCwtT3bp1JUnbtm2TxWLR4sWLTU4HAACcBTM4YIpnnnlG7u7ueu+99+zGhw8fruTkZH3wwQcmJQPyl4+Pj3bv3q3w8HCzowAFKikpSfPmzdOePXtkGIZq1KihHj16qFixYmZHAwAAToIZHCgww4YNs/3ZYrFo+vTpWrp0qW677TZJ0vr16xUdHa3HHnvMrIhAvmvSpIm2bNlCwYEix8fHR3feeafKly+vtLQ0SdKKFSskSZ07dzYzGgAAcBLM4ECBadGixQ0dZ7FYtHLlynxOA5jjq6++0ksvvaRnn31WDRs2zPbb6zp16piUDMg/hw4d0v33368dO3bIYrHIMAxZLBbb/szMTBPTAQAAZ0HBAQAFyMXFJdvYfz/w8UEPzqhTp05ydXXVp59+qooVK+qvv/7SuXPn9Nxzz+ndd9/VXXfdZXZEAADgBDhFBQAK0OHDh82OABS4P//8UytXrlSpUqXk4uIiV1dX3XnnnRo3bpwGDx6sLVu2mB0RAAA4AQoOAChArL2BoigzM1O+vr6Ssi4TfuLECVWrVk3h4eHau3evyekAAICzyD5XGgCQrz777DPdcccdCg0N1dGjRyVJkyZN0vfff29yMiB/1KpVS9u3b5eUtdDu+PHj9fvvv+t///ufKlasaHI6AADgLCg4AKAATZs2TcOGDVP79u114cIF25obxYsX16RJk8wNB+STV199VVarVZL0+uuv6+jRo7rrrrv0888/6/333zc5HQAAcBYsMgoABahGjRp68803dd9998nPz0/btm1TxYoVtXPnTjVv3lxnzpwxOyJQIM6dO6cSJUrYXU0FAADgZrAGBwAUoMOHD6t+/frZxj09PZWYmGhCIsAcgYGBZkcAAABOhlNUAKAARUREaOvWrdnGf/nlF9WoUaPgAwEAAABOghkcAFCAnn/+eT399NNKSUmRYRj6+++/tWDBAo0bN07Tp083Ox4AAADgsFiDAwAK2KeffqrXX39d0dHRkqSyZctqzJgx6tevn8nJAAAAAMdFwQEAJjlz5oysVqtKly5tdhQAAADA4bEGBwAUoJYtW+rChQuSpKCgIFu5ER8fr5YtW5qYDAAAAHBszOAAgALk4uKikydPZpu1ERsbq7Jlyyo9Pd2kZAAAAIBjY5FRACgA27dvt/35n3/+0cmTJ223MzMz9euvv6ps2bJmRAMAAACcAjM4AKAAuLi4yGKxSJKu9M+ut7e3pkyZor59+xZ0NAAAAMApUHAAQAE4evSoDMNQxYoV9ffff6tUqVK2fR4eHipdurRcXV1NTAgAAAA4NgoOAAAAAADg8FiDAwAK2L59+7R69WrFxsbKarXa7Rs1apRJqQAAAADHxgwOAChAn376qQYOHKigoCAFBwfb1uWQJIvFos2bN5uYDgAAAHBcFBwAUIDCw8P11FNP6cUXXzQ7CgAAAOBUKDgAoAD5+/tr69atqlixotlRAAAAAKfiYnYAAChKHnroIS1dutTsGAAAAIDTYZFRAChAlStX1siRI7V+/XrVrl1b7u7udvsHDx5sUjIAAADAsXGKCgAUoIiIiKvus1gsOnToUAGmAQAAAJwHBQcAAAAAAHB4nKICAPls2LBheu2111SsWDENGzbsqsdZLBZNmDChAJMBAAAAzoOCAwDy2ZYtW5Senm7789VYLJaCigQAAAA4HU5RAQAAAAAADo/LxAIAAAAAAIdHwQEAAAAAABweBQcAAAAAAHB4FBwAAAAAAMDhUXAAAAAAAACHR8EBoEhq3ry5hg4dmm38u+++K/DLtVoslmtuvXv3LtA8AAAAgCNyMzsAABQlaWlp8vDwsBuLiYmx/fmLL77QqFGjtHfvXtuYt7d3geUDAAAAHBUzOADgGrZt26YWLVrIz89P/v7+atiwoTZu3Gjb/8cff+juu++Wt7e3wsLCNHjwYCUmJtr2V6hQQa+//rp69+6tgIAADRgwINtzBAcH27aAgABZLBYFBwerTJkyuvPOO/Xpp5/aHb9z5065uLjo4MGDkrJmgEybNk2RkZHy9vZWRESEvvrqK7v7HD9+XN26dVOJEiVUsmRJ3XvvvTpy5EgefqUAAAAAc1FwAMA19OzZU+XKldOGDRu0adMmvfTSS3J3d5ck7dixQ23btlWXLl20fft2ffHFF1q3bp0GDRpk9xjvvPOOatWqpU2bNmnkyJE3/NwWi0V9+/bVrFmz7MZnzpypu+66S5UqVbKNjRw5Ug888IC2bdumRx55RA8//LB2794tSUpKSlKLFi3k6+urtWvXat26dfL19VW7du2UlpaW2y8NAAAAUKhQcADANURFRalVq1a65ZZbVKVKFT300EOqW7eupKziokePHho6dKiqVKmipk2b6v3339fcuXOVkpJie4yWLVtq+PDhqly5sipXrpyj5+/Tp4/27t2rv//+W5KUnp6uefPmqW/fvnbHPfTQQ+rfv7+qVq2q1157TY0aNdKUKVMkSQsXLpSLi4umT5+u2rVrq3r16po1a5aioqK0evXqm/jqAAAAAIUHBQcAXMOwYcPUv39/tWrVSm+99ZbttBBJ2rRpk2bPni1fX1/b1rZtW1mtVh0+fNh2XKNGjXL9/CEhIerQoYNmzpwpSVq8eLFSUlL00EMP2R13++23Z7t9aQbHpk2bdODAAfn5+dlyBgYGKiUlxe71AAAAAI6MggNAkeTv76+4uLhs4xcuXJC/v7/t9pgxY7Rr1y516NBBK1euVI0aNfTtt99KkqxWq5544glt3brVtm3btk379++3O32kWLFiN5W1f//+WrhwoZKTkzVr1ix169ZNPj4+173fpavBWK1WNWzY0C7n1q1btW/fPvXo0eOmsgEAAACFBVdRAVAk3XLLLfrll1+yjW/YsEHVqlWzG6tataqqVq2qZ599Vg8//LBmzZql+++/Xw0aNNCuXbtyfNpJTrVv317FihXTtGnT9Msvv2jt2rXZjlm/fr0ee+wxu9v169eXJDVo0EBffPGFSpcubVfeAAAAAM6EGRwAiqSnnnpKBw8e1NNPP61t27Zp3759+uCDDzRjxgw9//zzkqTk5GQNGjRIq1ev1tGjR/X7779rw4YNql69uiTpxRdf1J9//qmnn35aW7du1f79+/XDDz/omWeeydOsrq6u6t27t0aMGKHKlStnOx1Fkr766ivNnDlT+/bt0+jRo/X333/bFjvt2bOngoKCdO+99+q3337T4cOHtWbNGg0ZMkTHjh3L06wAAACAWSg4ABRJFSpU0G+//aaDBw+qTZs2uvXWWzV79mzNnj3btr6Fq6urzp49q8cee0xVq1ZV165dFRkZqbFjx0qS6tSpozVr1mj//v266667VL9+fY0cOVIhISF5nrdfv35KS0vLtrjoJWPHjtXChQtVp04dzZkzR/Pnz1eNGjUkST4+Plq7dq3Kly+vLl26qHr16urbt6+Sk5OZ0QEAAACnYTEMwzA7BADg2n7//Xc1b95cx44dU5kyZez2WSwWffvtt7rvvvvMCQcAAAAUAqzBAQCFWGpqqqKjozVy5Eh17do1W7kBAAAAIAunqABAIbZgwQJVq1ZNcXFxGj9+vNlxAAAAgEKLU1QAAAAAAIDDYwYHAAAAAABweBQcAAAAAADA4VFwAAAAAAAAh0fBAQAAAAAAHB4FBwAAAAAAcHgUHAAAAAAAwOFRcAAAAAAAAIdHwQEAAAAAABze/wHiTLSjMWU2nwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "āœ… Visualization complete!\n", "\n", "================================================================================\n", "DEMO COMPLETE - Your Turn!\n", "================================================================================\n", "\n", "Next Steps:\n", "1. Replace synthetic data with your real customer feedback\n", "2. Adjust patterns to match your domain language\n", "3. Add more sophisticated analysis as needed\n", "4. Connect insights to business actions\n", "\n", "Remember: Every workaround is a feature request in disguise!\n", "\n" ] } ], "source": [ "\"\"\"\n", "Text Analytics Demo - WORKING VERSION for SAS Viya JupyterLab\n", "==============================================================\n", "This version properly generates synthetic data!\n", "\"\"\"\n", "\n", "import pandas as pd\n", "import numpy as np\n", "import random\n", "from datetime import datetime, timedelta\n", "import re\n", "from collections import Counter\n", "import matplotlib.pyplot as plt\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "print(\"=\" * 80)\n", "print(\"SYNTHETIC DATA GENERATION - Fixed Version\")\n", "print(\"=\" * 80)\n", "\n", "# FIXED: Complete implementation of synthetic data generation\n", "def generate_synthetic_feedback():\n", " \"\"\"\n", " Creates realistic customer feedback with hidden insights.\n", " This version actually generates the data!\n", " \"\"\"\n", " \n", " # Lists of components to build feedback from\n", " workarounds = [\n", " \"use Excel to track my custom exercises\",\n", " \"screenshot my progress to compare later\",\n", " \"write notes in my phone about my form\",\n", " \"use two different apps together\",\n", " \"manually calculate my total calories\",\n", " \"set phone reminders for rest days\",\n", " \"keep a paper journal for how I felt\"\n", " ]\n", " \n", " goals = [\n", " \"track my full routine\",\n", " \"see my real progress\",\n", " \"remember my personal records\",\n", " \"plan my workout week\",\n", " \"know if I'm overtraining\",\n", " \"share with my trainer\",\n", " \"stay consistent\"\n", " ]\n", " \n", " missing_features = [\n", " \"let me create custom exercises\",\n", " \"show progress over time clearly\",\n", " \"sync with my calendar\",\n", " \"track how I'm feeling\",\n", " \"suggest rest when needed\",\n", " \"export my data\",\n", " \"work offline at the gym\"\n", " ]\n", " \n", " pain_points = [\n", " \"the app crashes mid-workout\",\n", " \"I lose my data when I switch phones\",\n", " \"it doesn't recognize my exercise names\",\n", " \"the timer doesn't work with screen off\",\n", " \"my friends can't see my achievements\",\n", " \"it counts calories wrong for my body type\",\n", " \"rest days aren't tracked properly\"\n", " ]\n", " \n", " contexts = [\n", " \"when I'm in the middle of a set\",\n", " \"during peak gym hours\",\n", " \"on leg day\",\n", " \"when I'm trying a new routine\",\n", " \"after a long break\",\n", " \"when showing friends my progress\",\n", " \"during competition prep\"\n", " ]\n", " \n", " # Template patterns for generating feedback\n", " templates = [\n", " # Workaround patterns\n", " \"The app is good but I have to {} to {}\",\n", " \"I usually {} because the app doesn't {}\",\n", " \"My trick is to {} when I want to {}\",\n", " \"I ended up {} since there's no way to {}\",\n", " \"Works fine but I always {} before my workout\",\n", " \n", " # Hidden needs patterns\n", " \"I wish I could {} without having to {}\",\n", " \"Would be nice if it could {} like MyFitnessPal does\",\n", " \"It's annoying when {}, especially {}\",\n", " \"Love the app but {} makes me frustrated\",\n", " \"Great for tracking but {} is frustrating\",\n", " \n", " # Direct complaints\n", " \"Please fix {}\",\n", " \"5 stars if you could {}\",\n", " \"The biggest problem is {}\",\n", " \"{} really needs improvement\",\n", " \n", " # Positive with suggestions\n", " \"Great app! Just needs to {}\",\n", " \"Love it, but please add ability to {}\",\n", " \"Almost perfect - just missing {}\",\n", " \"Best fitness app, would be even better if it could {}\"\n", " ]\n", " \n", " # Generate 500 feedback entries\n", " feedback_data = []\n", " \n", " for i in range(500):\n", " # Randomly choose template type\n", " template = random.choice(templates)\n", " \n", " # Fill in the template based on its pattern\n", " if \"{}\" in template:\n", " if template.count(\"{}\") == 2:\n", " # Templates with 2 placeholders\n", " if \"have to\" in template or \"trick is\" in template or \"ended up\" in template or \"usually\" in template:\n", " # Workaround pattern\n", " text = template.format(\n", " random.choice(workarounds),\n", " random.choice(goals)\n", " )\n", " elif \"wish\" in template or \"without having\" in template:\n", " # Hidden need pattern\n", " text = template.format(\n", " random.choice(missing_features).replace(\"let me \", \"\"),\n", " random.choice(workarounds)\n", " )\n", " elif \"annoying when\" in template:\n", " # Context-specific complaint\n", " text = template.format(\n", " random.choice(pain_points),\n", " random.choice(contexts)\n", " )\n", " else:\n", " # Generic two-placeholder\n", " text = template.format(\n", " random.choice(pain_points),\n", " random.choice(contexts)\n", " )\n", " else:\n", " # Templates with 1 placeholder\n", " choice = random.random()\n", " if choice < 0.33:\n", " text = template.format(random.choice(pain_points))\n", " elif choice < 0.66:\n", " text = template.format(random.choice(missing_features))\n", " else:\n", " text = template.format(random.choice(workarounds))\n", " else:\n", " # No template, use as is\n", " text = template\n", " \n", " # Add some variety with additional simple feedback\n", " if random.random() < 0.2: # 20% chance of simple feedback\n", " simple_feedback = [\n", " f\"Great app but {random.choice(pain_points)}\",\n", " f\"Love tracking my workouts but {random.choice(pain_points)}\",\n", " f\"5 stars if you could {random.choice(missing_features)}\",\n", " f\"Please add {random.choice(missing_features).replace('let me', 'ability to')}\",\n", " f\"I have to {random.choice(workarounds)} which is annoying\"\n", " ]\n", " text = random.choice(simple_feedback)\n", " \n", " # Create feedback entry with metadata\n", " feedback_data.append({\n", " 'feedback_id': f'FB_{i:04d}',\n", " 'date': datetime.now() - timedelta(days=random.randint(1, 180)),\n", " 'rating': random.choices([1, 2, 3, 4, 5], weights=[5, 10, 20, 40, 25])[0],\n", " 'text': text,\n", " 'user_type': random.choice(['beginner', 'intermediate', 'advanced']),\n", " 'platform': random.choice(['iOS', 'Android']),\n", " })\n", " \n", " return pd.DataFrame(feedback_data)\n", "\n", "# Generate the data\n", "print(\"\\nšŸ“Š Generating synthetic customer feedback for a fitness tracking app...\")\n", "df = generate_synthetic_feedback()\n", "\n", "print(f\"āœ… Generated {len(df)} feedback entries\")\n", "print(f\"\\nFirst 5 feedback samples:\")\n", "print(\"-\" * 80)\n", "for idx, row in df.head().iterrows():\n", " print(f\"Rating: {row['rating']}ā˜… | {row['text'][:70]}...\")\n", "print(\"-\" * 80)\n", "\n", "print(\"\\nDataFrame shape:\", df.shape)\n", "print(\"Columns:\", df.columns.tolist())\n", "\n", "# Save for verification\n", "print(\"\\nšŸ’¾ Saving data for inspection...\")\n", "print(\"First 10 rows of generated data:\")\n", "print(df[['rating', 'text']].head(10))\n", "\n", "# Basic statistics\n", "print(\"\\nšŸ“Š Basic Statistics:\")\n", "print(f\"Average rating: {df['rating'].mean():.2f}\")\n", "print(f\"Rating distribution:\")\n", "print(df['rating'].value_counts().sort_index())\n", "\n", "print(\"\\n\" + \"=\" * 80)\n", "print(\"ANALYSIS PHASE 1: Finding Workarounds\")\n", "print(\"=\" * 80)\n", "\n", "def find_workarounds(texts):\n", " \"\"\"Find patterns indicating customers are working around limitations\"\"\"\n", " workaround_patterns = [\n", " r\"i have to ([\\w\\s]+)\",\n", " r\"i usually ([\\w\\s]+)\",\n", " r\"my trick is to ([\\w\\s]+)\",\n", " r\"i ended up ([\\w\\s]+)\",\n", " r\"i always ([\\w\\s]+)\"\n", " ]\n", " \n", " workarounds_found = []\n", " for text in texts:\n", " text_lower = text.lower()\n", " for pattern in workaround_patterns:\n", " matches = re.findall(pattern, text_lower)\n", " # Clean up matches - take only first few words\n", " for match in matches:\n", " words = match.split()[:3] # Take first 3 words\n", " if words: # Only add non-empty matches\n", " workarounds_found.append(' '.join(words))\n", " \n", " return Counter(workarounds_found).most_common(10)\n", "\n", "print(\"\\nšŸ” Detecting customer workarounds...\")\n", "workarounds = find_workarounds(df['text'].tolist())\n", "\n", "if workarounds:\n", " print(\"\\nTop customer workarounds detected:\")\n", " for i, (workaround, count) in enumerate(workarounds[:5], 1):\n", " print(f\" {i}. '{workaround}' - mentioned {count} times\")\n", "else:\n", " print(\"No workarounds found - check the text generation!\")\n", "\n", "print(\"\\n\" + \"=\" * 80)\n", "print(\"ANALYSIS PHASE 2: Finding Hidden Feature Requests\")\n", "print(\"=\" * 80)\n", "\n", "def extract_wishes(texts):\n", " \"\"\"Find what customers wish the product could do\"\"\"\n", " wish_patterns = [\n", " r\"wish (?:i|it) could ([\\w\\s]+?)(?:\\.|,|$)\",\n", " r\"would be (?:nice|great|better) if ([\\w\\s]+?)(?:\\.|,|$)\",\n", " r\"please (?:add|fix) ([\\w\\s]+?)(?:\\.|,|$)\",\n", " r\"needs to ([\\w\\s]+?)(?:\\.|,|$)\",\n", " r\"missing ([\\w\\s]+?)(?:\\.|,|$)\"\n", " ]\n", " \n", " wishes = []\n", " for text in texts:\n", " text_lower = text.lower()\n", " for pattern in wish_patterns:\n", " matches = re.findall(pattern, text_lower)\n", " wishes.extend([m.strip() for m in matches if len(m.strip()) > 3])\n", " \n", " return Counter(wishes).most_common(10)\n", "\n", "print(\"\\nšŸŽÆ Mining for implicit feature requests...\")\n", "wishes = extract_wishes(df['text'].tolist())\n", "\n", "if wishes:\n", " print(\"\\nTop implicit feature requests:\")\n", " for i, (wish, count) in enumerate(wishes[:5], 1):\n", " print(f\" {i}. '{wish}' - {count} mentions\")\n", "else:\n", " print(\"No wishes found - check the patterns!\")\n", "\n", "print(\"\\n\" + \"=\" * 80)\n", "print(\"ANALYSIS PHASE 3: Simple Sentiment Analysis\")\n", "print(\"=\" * 80)\n", "\n", "def simple_sentiment(text):\n", " \"\"\"Basic sentiment analysis without external libraries\"\"\"\n", " positive_words = ['love', 'great', 'excellent', 'good', 'amazing', \n", " 'best', 'awesome', 'fantastic', 'happy', 'perfect']\n", " negative_words = ['hate', 'bad', 'terrible', 'worst', 'awful', \n", " 'horrible', 'annoying', 'frustrated', 'disappointed', 'crash']\n", " \n", " text_lower = text.lower()\n", " pos_score = sum(1 for word in positive_words if word in text_lower)\n", " neg_score = sum(1 for word in negative_words if word in text_lower)\n", " \n", " if pos_score > neg_score:\n", " return 'positive'\n", " elif neg_score > pos_score:\n", " return 'negative'\n", " else:\n", " return 'neutral'\n", "\n", "print(\"\\nšŸŽ­ Analyzing sentiment...\")\n", "df['sentiment'] = df['text'].apply(simple_sentiment)\n", "\n", "print(\"\\nSentiment Distribution:\")\n", "print(df['sentiment'].value_counts())\n", "\n", "print(\"\\nSentiment by Rating:\")\n", "sentiment_by_rating = df.groupby('rating')['sentiment'].value_counts().unstack(fill_value=0)\n", "print(sentiment_by_rating)\n", "\n", "print(\"\\n\" + \"=\" * 80)\n", "print(\"KEY INSIGHTS DISCOVERED\")\n", "print(\"=\" * 80)\n", "\n", "print(\"\"\"\n", "šŸŽÆ What We Found in the Synthetic Data:\n", "\n", "1. WORKAROUNDS reveal missing features\n", " - Users shouldn't have to use Excel for tracking\n", " - Screenshot workarounds = need for progress visualization\n", " \n", "2. WISHES show desired improvements \n", " - Direct feature requests hidden in feedback\n", " - Comparisons to competitors reveal gaps\n", " \n", "3. SENTIMENT shows satisfaction isn't binary\n", " - Even positive reviews contain complaints\n", " - Frustration points exist at all rating levels\n", "\n", "šŸ“ Your Action Items:\n", " 1. Address the top workarounds first (biggest pain points)\n", " 2. Implement wished-for features (competitive advantage)\n", " 3. Fix issues causing negative sentiment (retention)\n", "\"\"\")\n", "\n", "# Create simple visualization\n", "print(\"\\nšŸ“Š Creating visualization...\")\n", "fig, axes = plt.subplots(2, 2, figsize=(12, 8))\n", "\n", "# 1. Rating Distribution\n", "ax1 = axes[0, 0]\n", "df['rating'].value_counts().sort_index().plot(kind='bar', ax=ax1, color='skyblue')\n", "ax1.set_title('Rating Distribution')\n", "ax1.set_xlabel('Rating')\n", "ax1.set_ylabel('Count')\n", "\n", "# 2. Sentiment Distribution\n", "ax2 = axes[0, 1]\n", "df['sentiment'].value_counts().plot(kind='pie', ax=ax2, autopct='%1.1f%%')\n", "ax2.set_title('Overall Sentiment')\n", "\n", "# 3. User Type Distribution\n", "ax3 = axes[1, 0]\n", "df['user_type'].value_counts().plot(kind='bar', ax=ax3, color='lightgreen')\n", "ax3.set_title('User Type Distribution')\n", "ax3.set_xlabel('User Type')\n", "ax3.set_ylabel('Count')\n", "\n", "# 4. Platform Distribution\n", "ax4 = axes[1, 1]\n", "df['platform'].value_counts().plot(kind='pie', ax=ax4, autopct='%1.1f%%')\n", "ax4.set_title('Platform Distribution')\n", "\n", "plt.tight_layout()\n", "plt.savefig('text_analytics_results.png', dpi=100, bbox_inches='tight')\n", "plt.show()\n", "\n", "print(\"āœ… Visualization complete!\")\n", "\n", "print(\"\\n\" + \"=\" * 80)\n", "print(\"DEMO COMPLETE - Your Turn!\")\n", "print(\"=\" * 80)\n", "print(\"\"\"\n", "Next Steps:\n", "1. Replace synthetic data with your real customer feedback\n", "2. Adjust patterns to match your domain language\n", "3. Add more sophisticated analysis as needed\n", "4. Connect insights to business actions\n", "\n", "Remember: Every workaround is a feature request in disguise!\n", "\"\"\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.6" } }, "nbformat": 4, "nbformat_minor": 5 }