Skip to content
Snippets Groups Projects
survey_results.ipynb 25.8 KiB
Newer Older
{
 "cells": [
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "from scipy.stats import pearsonr\n",
    "import numpy as np\n",
    "from src.main import setup_dataframes, Plotter, replace_cryptic_names, Categories, Statistics\n",
    "from kPOD import k_pod\n",
    "from sklearn.manifold import MDS\n",
    "import matplotlib.pyplot as plt\n",
    "interview, variables, values, product_categories, rankings = setup_dataframes()\n",
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
    "df_filtered = interview.get_filtered(product_categories)\n",
    "plotter = Plotter(df_filtered, product_categories)\n",
    "plotter.plot_groups(variables.get_groups())\n",
    "statistics = Statistics(df_filtered, product_categories)"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
    "plotter.plot_faculty()"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "plotter.plot_item(Categories.Games, 'all')\n",
    "plotter.plot_item(Categories.LMS, 'all')"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "plotter.plot_item(Categories.VR, 'top')"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "plotter.plot_item(Categories.VR, 'mid')"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
    "plotter.plot_item(Categories.VR, 'low')"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Boxplot for chosen scales in all 4 categories\n",
    "Choosing scales by n largest means greater equal 5\n",
    "Boxplot with quantile whiskers, mean and SD. No median or beveled boxes."
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "    plotter.plot_boxes(c, 5)"
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Showing Scales with drastic differences\n",
    "Sorting all Scales by mean for each category.\n",
    "Showing \"drastic difference\" by a step size from one mean to the next bigger one, when it exceeds threshold p."
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Correlation of categories\n",
    "Correlating means of scales of each category. Significance (p<= 0.05) is displayed with *"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
   }
  },
  {
   "cell_type": "code",
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "statistics = Statistics(df_filtered, product_categories)\n",
    "statistics.calc_corr()"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Comparing replication results\n",
    "Sum up all LMS and game scales of original UEQ+ and our study. Show results in a table.\n",
    "(doesn't need to be programmed I guess)"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "paper_LMS = ['Inhaltsqualität', 'Nützlichkeit', 'Durchschaubarkeit', 'Übersichtlichkeit', 'Effizienz',\n",
    "             'Intuitive Bedienung', 'Vertrauen', 'Steuerbarkeit', 'Stimulation', 'Anpassbarkeit', 'Wertigkeit', 'visuelle Ästhetik', 'Immersion',\n",
    "             'Originalität', 'Identität', 'Verbundenheit']\n",
    "handbook_LMS = ['Inhaltsqualität', 'Vertrauenswürdigkeit', 'Nützlichkeit', 'Übersichtlichkeit', 'Durchschaubarkeit', 'Effizienz', 'Vertrauen', 'Steuerbarkeit']\n",
    "latest_paper_LMS = ['Inhaltsqualität', 'Nützlichkeit', 'Übersichtlichkeit', 'Durchschaubarkeit', 'Effizienz', 'Steuerbarkeit', 'Intuitive Bedienung',\n",
    "                    'Vertrauen', 'Wertigkeit', 'Stimulation', 'Anpassbarkeit', 'visuelle Ästhetik', 'Originalität']\n",
    "new_LMS = ['Inhaltsqualität', 'Inhaltsseriosität', 'Vertrauen', 'Effizienz', 'Nützlichkeit', 'Durchschaubarkeit', 'Steuerbarkeit', 'Übersichtlichkeit',\n",
    "           'Intuitive Bedienung', 'Anpassbarkeit', 'Wertigkeit', 'Attraktivität', 'visuelle Ästhetik', 'Stimulation', 'Akustik', 'Identität',\n",
    "           'Verbundenheit', 'Originalität', 'Haptik', 'Immersion']\n",
    "paper_games = ['Immersion', 'Stimulation', 'visuelle Ästhetik', 'Originalität', 'Steuerbarkeit', 'Durchschaubarkeit', 'Intuitive Bedienung',\n",
    "               'Verbundenheit', 'Übersichtlichkeit', 'Effizienz', 'Wertigkeit', 'Anpassbarkeit', 'Vertrauen', 'Identität','Inhaltsqualität', 'Nützlichkeit']\n",
    "handbook_games = ['Immersion', 'Stimulation', 'Originalität', 'Intuitive Bedienung']\n",
    "latest_paper_games = ['Stimulation', 'Originalität', 'visuelle Ästhetik', 'Steuerbarkeit', 'Durchschaubarkeit', 'Intuitive Bedienung',\n",
    "                      'Originalität', 'Effizienz', 'Wertigkeit', 'Vertrauen', 'Anpassbarkeit', 'Inhaltsqualität', 'Nützlichkeit']\n",
    "new_games = ['Stimulation', 'Immersion', 'Vertrauen', 'Steuerbarkeit', 'Durchschaubarkeit', 'Attraktivität', 'Intuitive Bedienung', 'Originalität',\n",
    "             'visuelle Ästhetik', 'Effizienz', 'Übersichtlichkeit', 'Wertigkeit', 'Anpassbarkeit', 'Inhaltsseriosität', 'Akustik', 'Inhaltsqualität',\n",
    "             'Verbundenheit', 'Haptik', 'Identität', 'Nützlichkeit']\n",
    "\n",
    "all_rankings = {'LMS from paper': paper_LMS,\n",
    "                'LMS from handbook': handbook_LMS,\n",
    "                'LMS from latest paper': latest_paper_LMS,\n",
    "                'LMS from our study': new_LMS,\n",
    "                'games from paper': paper_games,\n",
    "                'games from handbook': handbook_games,\n",
    "                'games from latest paper': latest_paper_games,\n",
    "                'games from our study': new_games}\n",
    "print(statistics.similarity_by_ranked_scales(all_rankings))"
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
Jan Bernoth's avatar
Jan Bernoth committed
   "execution_count": null,
   "outputs": [],
   "source": [
    "df_groups = statistics.kpod_clustering(all_rankings)\n",
    "\n",
    "N = 40\n",
    "x, y, c = np.random.rand(3, N)\n",
    "s = np.random.randint(10, 220, size=N)\n",
    "m = np.repeat(df_groups, N/4)\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "\n",
    "scatter = plotter.m_scatter(x, y, c=c, s=s, m=m, ax=ax)\n",
    "\n",
    "plt.show()"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "x = []\n",
    "y = []\n",
    "\n",
    "symbol = \"AAPL\"\n",
    "\n",
    "x = range(5)\n",
    "y = [5,10,12,15,11]\n",
    "\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "scatter = plotter.m_scatter(x,y,c=[0,0,0,0,0], s=[25,25,25,25,25], m=['a','b','c','d','e'], ax=ax)\n",
    "\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [
    "df_groups = statistics.kpod_clustering(all_rankings)\n",
    "val = 0\n",
    "#plt.plot(\n",
    "#    df_groups['group'],\n",
    "#    np.zeros_like(df_groups['group']) + val,\n",
    "#    marker=r\"$ {} $\".format(df_groups['group'].index[2], markersize=25)\n",
    "#)\n",
    "#plt.show()\n",
    "\n",
    "df_groups['group'].index[2]"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "outputs": [
    {
     "ename": "AttributeError",
     "evalue": "'Plotter' object has no attribute 'mscatter'",
     "output_type": "error",
     "traceback": [
      "\u001B[1;31m---------------------------------------------------------------------------\u001B[0m",
      "\u001B[1;31mAttributeError\u001B[0m                            Traceback (most recent call last)",
      "Cell \u001B[1;32mIn[25], line 12\u001B[0m\n\u001B[0;32m      8\u001B[0m y \u001B[38;5;241m=\u001B[39m [\u001B[38;5;241m5\u001B[39m,\u001B[38;5;241m10\u001B[39m,\u001B[38;5;241m12\u001B[39m,\u001B[38;5;241m15\u001B[39m,\u001B[38;5;241m11\u001B[39m]\n\u001B[0;32m     11\u001B[0m fig, ax \u001B[38;5;241m=\u001B[39m plt\u001B[38;5;241m.\u001B[39msubplots()\n\u001B[1;32m---> 12\u001B[0m scatter \u001B[38;5;241m=\u001B[39m \u001B[43mplotter\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mmscatter\u001B[49m(x,y,c\u001B[38;5;241m=\u001B[39m[\u001B[38;5;241m0\u001B[39m,\u001B[38;5;241m0\u001B[39m,\u001B[38;5;241m0\u001B[39m,\u001B[38;5;241m0\u001B[39m,\u001B[38;5;241m0\u001B[39m], s\u001B[38;5;241m=\u001B[39m[\u001B[38;5;241m25\u001B[39m,\u001B[38;5;241m25\u001B[39m,\u001B[38;5;241m25\u001B[39m,\u001B[38;5;241m25\u001B[39m,\u001B[38;5;241m25\u001B[39m], m\u001B[38;5;241m=\u001B[39m[\u001B[38;5;124m'\u001B[39m\u001B[38;5;124ma\u001B[39m\u001B[38;5;124m'\u001B[39m,\u001B[38;5;124m'\u001B[39m\u001B[38;5;124mb\u001B[39m\u001B[38;5;124m'\u001B[39m,\u001B[38;5;124m'\u001B[39m\u001B[38;5;124mc\u001B[39m\u001B[38;5;124m'\u001B[39m,\u001B[38;5;124m'\u001B[39m\u001B[38;5;124md\u001B[39m\u001B[38;5;124m'\u001B[39m,\u001B[38;5;124m'\u001B[39m\u001B[38;5;124me\u001B[39m\u001B[38;5;124m'\u001B[39m], ax\u001B[38;5;241m=\u001B[39max)\n\u001B[0;32m     14\u001B[0m plt\u001B[38;5;241m.\u001B[39mshow()\n",
      "\u001B[1;31mAttributeError\u001B[0m: 'Plotter' object has no attribute 'mscatter'"
    },
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjEAAAGmCAYAAACN5NWSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAgGklEQVR4nO3df0xV9/3H8dcVuVwsUEJTChUtxAQYXSpUQWmgsy4x/aNJTeMftaFrTaD215hWsTUzFn+sa4sOyxZKbcRuKjOLWusa2pD+SNO0KWrbrF0VQ5fCsHDBiUKRK5fC+f7hlzsR7DzcC54PPB9JE/vhc+/93L2xPHfvAVyWZVkCAAAwzLTrfQAAAICxIGIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARgoqYl577TU9/PDDP7nn3LlzWrNmjbKzs5WTk6NNmzbJ5/MF87AAAACaPtYb7tu3Tzt27ND8+fN/cl9xcbF8Pp/eeOMNdXd367e//a16e3v10ksvjfWhAQAA7EdMe3u7nn/+edXX1ys5Ofkn93755Zc6evSoamtrNWfOHEnS5s2bVVhYqGeeeUa33HLLmA4NAABg++2kb775RuHh4Tpy5Ijmzp37k3uPHz+um2++ORAwkpSTkyOXy6XPP//c/mkBAAD+n+1XYhYvXqzFixdf09729nYlJiYOW3O73YqNjVVbW5vdh5Z06dUdy7IUHh4+ptsDAICJ19/fL5fLpaysrJDd55ivibkWPp9Pbrd7xHpERIT6+vrGdJ+WZcmyLPn9/mCPBwAADDauEePxeEaNjb6+Ps2YMWNM9xkeHi6/36/k5GRFRkYGe0QEwefzqampiVk4ALNwDmbhHMzCWRobGzVtWmh/ssu4RkxCQoLee++9YWt+v1/nz59XfHx8UPcdGRk55hBCaDEL52AWzsEsnINZOIPL5Qr5fY7rD7vLzs6W1+tVc3NzYO3o0aOSpHnz5o3nQwMAgEkupBEzMDCgM2fO6OLFi5KkuXPn6s4779Tq1av11Vdf6bPPPtPGjRu1dOlSvr0aAAAEJaQR09bWpry8PNXW1kq69NLRn/70JyUlJemRRx7RqlWrdPfdd6u0tDSUDwsAAKagoK6JefHFF4f9e1JSkk6dOjVs7aabblJFRUUwDwMAADACvwASAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGsh0xg4ODqqioUH5+vjIzM1VUVKSWlpar7j979qzWrFmjhQsXasGCBVq9erXa29uDOjQAAIDtiKmsrFRNTY22bNmi/fv3a3BwUIWFhfL7/aPuX7VqlVpbW7V7927t3r1bra2teuqpp4I+OAAAmNpsRYzf71d1dbWKi4u1aNEipaenq7y8XF6vV3V1dSP2d3d36+jRoyoqKtLPfvYzZWRk6LHHHtPXX3+t8+fPh+o5AACAKchWxDQ0NOjChQvKzc0NrMXExCgjI0PHjh0bsd/j8eiGG27Q4cOH1dPTo56eHr311ltKSUlRTExM8KcHAABT1nQ7m71eryQpMTFx2Hp8fHzgY5dzu9168cUXtXHjRs2fP18ul0vx8fHau3evpk0L7ppin88X1O0RvKEZMIvrj1k4B7NwDmbhLJZlyeVyhfQ+bUXM0CeC2+0eth4REaGurq4R+y3L0smTJ5WVlaXCwkINDAyovLxcTz75pP76178qKipqzAdvamoa820RWszCOZiFczAL52AWznFlPwTLVsR4PB5Jl66NGfqzJPX19SkyMnLE/nfeeUd79+7Vhx9+GAiWqqoq3XPPPTpw4IAeffTRMR88OTl51MfExPH5fGpqamIWDsAsnINZOAezcJbGxsaQ36etiBl6G6mjo0OzZ88OrHd0dCgtLW3E/uPHjyslJWXYKy433nijUlJS1NzcPNYzS5IiIyM1Y8aMoO4DocEsnINZOAezcA5m4QyhfitJsnlhb3p6uqKiolRfXx9Y6+7u1okTJ5SdnT1if0JCgpqbm9XX1xdY6+3t1enTp5WcnDz2UwMAgCnPVsS43W4VFBRo27Ztev/999XQ0KDVq1crISFBS5Ys0cDAgM6cOaOLFy9KkpYuXSrp0s+KaWhoUENDg5555hlFRETogQceCPmTAQAAU4ftbxEqLi7WsmXLtGHDBi1fvlxhYWHatWuXwsPD1dbWpry8PNXW1kq69F1LNTU1sixLjzzyiFasWKHw8HDV1NQoOjo65E8GAABMHbauiZGksLAwlZSUqKSkZMTHkpKSdOrUqWFrc+bMUVVV1dhPCAAAMAp+ASQAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxkO2IGBwdVUVGh/Px8ZWZmqqioSC0tLVfd39/fr+3btwf2FxQU6OTJk0EdGgAAwHbEVFZWqqamRlu2bNH+/fs1ODiowsJC+f3+UfeXlpbq0KFDeuGFF3Tw4EHFxcWpqKhIP/zwQ9CHBwAAU5etiPH7/aqurlZxcbEWLVqk9PR0lZeXy+v1qq6ubsT+lpYWHTx4UL/73e+Un5+vOXPmaOvWrXK73frnP/8ZsicBAACmHlsR09DQoAsXLig3NzewFhMTo4yMDB07dmzE/k8++UTR0dG6++67h+3/4IMPht0HAACAXdPtbPZ6vZKkxMTEYevx8fGBj13uu+++06xZs1RXV6edO3eqvb1dGRkZeu655zRnzpwgji35fL6gbo/gDc2AWVx/zMI5mIVzMAtnsSxLLpcrpPdpK2KGPhHcbvew9YiICHV1dY3Y39PTo+bmZlVWVmrdunWKiYnRq6++qoceeki1tbW66aabxnzwpqamMd8WocUsnINZOAezcA5m4RxX9kOwbEWMx+ORdOnamKE/S1JfX58iIyNH3vn06erp6VF5eXnglZfy8nL94he/0JtvvqnCwsIxHzw5OXnUx8TE8fl8ampqYhYOwCycg1k4B7NwlsbGxpDfp62IGXobqaOjQ7Nnzw6sd3R0KC0tbcT+hIQETZ8+fdhbRx6PR7NmzdLp06fHemZJUmRkpGbMmBHUfSA0mIVzMAvnYBbOwSycIdRvJUk2L+xNT09XVFSU6uvrA2vd3d06ceKEsrOzR+zPzs7Wjz/+qK+//jqwdvHiRbW0tOi2224L4tgAAGCqs/VKjNvtVkFBgbZt26a4uDjNnDlTZWVlSkhI0JIlSzQwMKDOzk5FR0fL4/Fo/vz5uuuuu/Tss89q8+bNio2NVUVFhcLCwnT//feP13MCAABTgO0fdldcXKxly5Zpw4YNWr58ucLCwrRr1y6Fh4erra1NeXl5qq2tDez/4x//qJycHD399NNatmyZenp69Je//EVxcXEhfSIAAGBqsfVKjCSFhYWppKREJSUlIz6WlJSkU6dODVuLiopSaWmpSktLx3xIAACAK/ELIAEAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCTbETM4OKiKigrl5+crMzNTRUVFamlpuabbHjlyRGlpaTp9+rTtgwIAAFzOdsRUVlaqpqZGW7Zs0f79+zU4OKjCwkL5/f6fvN3333+vzZs3j/mgAAAAl7MVMX6/X9XV1SouLtaiRYuUnp6u8vJyeb1e1dXVXfV2g4ODKikp0e233x70gQEAACSbEdPQ0KALFy4oNzc3sBYTE6OMjAwdO3bsqrerqqpSf3+/Vq5cOfaTAgAAXGa6nc1er1eSlJiYOGw9Pj4+8LErffXVV6qurtaBAwfU3t4+xmOO5PP5QnZfGJuhGTCL649ZOAezcA5m4SyWZcnlcoX0Pm1FzNAngtvtHrYeERGhrq6uEft7e3u1du1arV27VsnJySGNmKamppDdF4LDLJyDWTgHs3AOZuEcV/ZDsGxFjMfjkXTp2pihP0tSX1+fIiMjR+zfunWrUlJS9OCDDwZ5zJGSk5NHfUxMHJ/Pp6amJmbhAMzCOZiFczALZ2lsbAz5fdqKmKG3kTo6OjR79uzAekdHh9LS0kbsP3jwoNxut7KysiRJAwMDkqT77rtPjz/+uB5//PExHzwyMlIzZswY8+0ROszCOZiFczAL52AWzhDqt5IkmxGTnp6uqKgo1dfXByKmu7tbJ06cUEFBwYj9V37H0j/+8Q+VlJRo586dSk1NDeLYAABgqrMVMW63WwUFBdq2bZvi4uI0c+ZMlZWVKSEhQUuWLNHAwIA6OzsVHR0tj8ej2267bdjthy7+vfXWWxUbGxuyJwEAAKYe2z/srri4WMuWLdOGDRu0fPlyhYWFadeuXQoPD1dbW5vy8vJUW1s7HmcFAAAIsPVKjCSFhYWppKREJSUlIz6WlJSkU6dOXfW2CxYs+MmPAwAAXCt+ASQAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjETEAAMBIRAwAADASEQMAAIxkO2IGBwdVUVGh/Px8ZWZmqqioSC0tLVfd39jYqMcee0wLFixQbm6uiouL1draGtShAQAAbEdMZWWlampqtGXLFu3fv1+Dg4MqLCyU3+8fsffcuXNasWKFPB6P9uzZo9dff12dnZ0qLCxUX19fSJ4AAACYmmxFjN/vV3V1tYqLi7Vo0SKlp6ervLxcXq9XdXV1I/a/99576u3t1csvv6zU1FT9/Oc/V1lZmf71r3/piy++CNmTAAAAU4+tiGloaNCFCxeUm5sbWIuJiVFGRoaOHTs2Yn9ubq4qKyvl8Xj++4DTLj1kd3f3WM8MAACg6XY2e71eSVJiYuKw9fj4+MDHLpeUlKSkpKRhazt37pTH41F2drbdsw7j8/mCuj2CNzQDZnH9MQvnYBbOwSycxbIsuVyukN6nrYgZ+kRwu93D1iMiItTV1fU/b79nzx7t3btXGzZsUFxcnJ2HHqGpqSmo2yN0mIVzMAvnYBbOwSyc48p+CJatiBl6W8jv9w97i6ivr0+RkZFXvZ1lWXrllVf06quv6oknntDDDz88xuP+V3Jy8k8+Jsafz+dTU1MTs3AAZuEczMI5mIWzNDY2hvw+bUXM0NtIHR0dmj17dmC9o6NDaWlpo96mv79f69ev19tvv63169fr0UcfHftpLxMZGakZM2aE5L4QHGbhHMzCOZiFczALZwj1W0mSzQt709PTFRUVpfr6+sBad3e3Tpw4cdVrXNatW6d3331X27dvD1nAAAAA2Holxu12q6CgQNu2bVNcXJxmzpypsrIyJSQkaMmSJRoYGFBnZ6eio6Pl8Xh06NAh1dbWat26dcrJydGZM2cC9zW0BwAAYCxs/7C74uJiLVu2TBs2bNDy5csVFhamXbt2KTw8XG1tbcrLy1Ntba0k6e2335Ykvfzyy8rLyxv2z9AeAACAsbD1SowkhYWFqaSkRCUlJSM+lpSUpFOnTgX+vbq6OrjTAQAAXAW/ABIAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEYiYgAAgJGIGAAAYCQiBgAAGImIAQAARiJiAACAkYgYAABgJCIGAAAYiYgBAABGImIAAICRiBgAAGAkIgYAABiJiAEAAEayHTGDg4OqqKhQfn6+MjMzVVRUpJaWlqvuP3funNasWaPs7Gzl5ORo06ZN8vl8QR0aAADAdsRUVlaqpqZGW7Zs0f79+zU4OKjCwkL5/f5R9xcXF6u5uVlvvPGGXnnlFX300UcqLS0N9twAAGCKsxUxfr9f1dXVKi4u1qJFi5Senq7y8nJ5vV7V1dWN2P/ll1/q6NGjeumll3T77bcrNzdXmzdv1ltvvaX29vaQPQkAADD12IqYhoYGXbhwQbm5uYG1mJgYZWRk6NixYyP2Hz9+XDfffLPmzJkTWMvJyZHL5dLnn38exLEBAMBUN93OZq/XK0lKTEwcth4fHx/42OXa29tH7HW73YqNjVVbW5vds0qS+vv7JUmNjY1yuVxjug+EhmVZkpiFEzAL52AWzsEsnKW/vz/kc7AVMUMX5Lrd7mHrERER6urqGnX/lXuH9vf19dl56ICh/wGmTeMbq643l8s16nwx8ZiFczAL52AWzuJyua5vxHg8HkmXro0Z+rMk9fX1KTIyctT9o13w29fXpxkzZtg9qyQpKytrTLcDAACTi62XM4beGuro6Bi23tHRoVtuuWXE/oSEhBF7/X6/zp8/r/j4eLtnBQAACLAVMenp6YqKilJ9fX1grbu7WydOnFB2dvaI/dnZ2fJ6vWpubg6sHT16VJI0b968sZ4ZAADA3ttJbrdbBQUF2rZtm+Li4jRz5kyVlZUpISFBS5Ys0cDAgDo7OxUdHS2Px6O5c+fqzjvv1OrVq1VaWqre3l5t3LhRS5cuHfWVGwAAgGvlsoYu375GAwMD+sMf/qBDhw7p4sWLys7O1saNG5WUlKTTp0/rl7/8pX7/+9/rgQcekCSdPXtWmzZt0scff6yIiAjde++9Wr9+vSIiIsblCQEAgKnBdsQAAAA4Ad+nDAAAjETEAAAAIxExAADASEQMAAAwEhEDAACMRMQAAAAjOS5iBgcHVVFRofz8fGVmZqqoqEgtLS1X3X/u3DmtWbNG2dnZysnJ0aZNmwK/qBLBsTuLxsZGPfbYY1qwYIFyc3NVXFys1tbWCTzx5GV3Fpc7cuSI0tLSdPr06XE+5dRgdxb9/f3avn17YH9BQYFOnjw5gSeevOzO4uzZs1qzZo0WLlyoBQsWaPXq1Wpvb5/AE08dr732mh5++OGf3BOKr9+Oi5jKykrV1NRoy5Yt2r9/vwYHB1VYWDjqL5KUpOLiYjU3N+uNN97QK6+8oo8++kilpaUTe+hJys4szp07pxUrVsjj8WjPnj16/fXX1dnZqcLCwjH/xnL8l92/F0O+//57bd68eYJOOTXYnUVpaakOHTqkF154QQcPHlRcXJyKior0ww8/TPDJJx+7s1i1apVaW1u1e/du7d69W62trXrqqacm+NST3759+7Rjx47/uS8kX78tB+nr67OysrKsffv2Bda6urqsO+64w/r73/8+Yv8XX3xhpaamWt9++21g7eOPP7bS0tIsr9c7IWeerOzO4m9/+5uVlZVl+Xy+wFpra6uVmppqffrppxNy5snK7iyGDAwMWMuXL7d+9atfWampqVZLS8tEHHdSszuLf//731ZaWpr14YcfDtt/zz338PciSHZn0dXVZaWmplrvv/9+YO29996zUlNTrXPnzk3EkSc9r9drrVy50srMzLTuvfdeq6Cg4Kp7Q/X121GvxDQ0NOjChQvKzc0NrMXExCgjI0PHjh0bsf/48eO6+eabNWfOnMBaTk6OXC6XPv/88wk582Rldxa5ubmqrKyUx+MJrE2bdunTq7u7e/wPPInZncWQqqoq9ff3a+XKlRNxzCnB7iw++eQTRUdH6+677x62/4MPPhh2H7DP7iw8Ho9uuOEGHT58WD09Perp6dFbb72llJQUxcTETOTRJ61vvvlG4eHhOnLkiObOnfuTe0P19dvWL4Acb16vV5KUmJg4bD0+Pj7wscu1t7eP2Ot2uxUbG6u2trbxO+gUYHcWSUlJSkpKGra2c+dOeTyeUX/DOa6d3VlI0ldffaXq6modOHCA9/xDyO4svvvuO82aNUt1dXXauXOn2tvblZGRoeeee27Yf7xhn91ZuN1uvfjii9q4caPmz58vl8ul+Ph47d27N/B/uBCcxYsXa/Hixde0N1Rfvx01uaELetxu97D1iIiIUa+r8Pl8I/b+1H5cO7uzuNKePXu0d+9erV27VnFxceNyxqnC7ix6e3u1du1arV27VsnJyRNxxCnD7ix6enrU3NysyspKPfPMM3r11Vc1ffp0PfTQQzp79uyEnHmysjsLy7J08uRJZWVlad++ffrzn/+sW2+9VU8++aR6enom5Mz4r1B9/XZUxAy9FXHlRVl9fX2KjIwcdf9oF3D19fVpxowZ43PIKcLuLIZYlqUdO3Zo69ateuKJJ/7n1en43+zOYuvWrUpJSdGDDz44IeebSuzOYvr06erp6VF5ebny8vJ0xx13qLy8XJL05ptvjv+BJzG7s3jnnXe0d+9elZWVad68ecrJyVFVVZW+//57HThwYELOjP8K1ddvR0XM0EtLHR0dw9Y7Ojp0yy23jNifkJAwYq/f79f58+cVHx8/fgedAuzOQrr0raQlJSWqqqrS+vXrtWrVqvE+5pRgdxYHDx7Up59+qqysLGVlZamoqEiSdN9996mqqmr8DzyJjeW/UdOnTx/21pHH49GsWbP4lvcg2Z3F8ePHlZKSoqioqMDajTfeqJSUFDU3N4/vYTFCqL5+Oypi0tPTFRUVpfr6+sBad3e3Tpw4Mep1FdnZ2fJ6vcM+AY8ePSpJmjdv3vgfeBKzOwtJWrdund59911t375djz766ASddPKzO4u6ujq9/fbbOnz4sA4fPqytW7dKunSNEq/OBGcs/4368ccf9fXXXwfWLl68qJaWFt12220TcubJyu4sEhIS1NzcPOytit7eXp0+fZq3Xa+DUH39dtSFvW63WwUFBdq2bZvi4uI0c+ZMlZWVKSEhQUuWLNHAwIA6OzsVHR0tj8ejuXPn6s4779Tq1atVWlqq3t5ebdy4UUuXLr3qqwW4NnZncejQIdXW1mrdunXKycnRmTNnAvc1tAdjY3cWV35xHLrI8dZbb1VsbOx1eAaTh91ZzJ8/X3fddZeeffZZbd68WbGxsaqoqFBYWJjuv//+6/10jGZ3FkuXLtWuXbu0atUq/eY3v5Ek7dixQxEREXrggQeu87OZ/Mbt63cQ3xI+Ln788Ufr5ZdfthYuXGhlZmZaRUVFgZ9v0dLSYqWmploHDx4M7P/Pf/5j/frXv7YyMzOtBQsWWM8//7x18eLF63X8ScXOLFasWGGlpqaO+s/l88LY2P17cbnPPvuMnxMTQnZn8cMPP1jPP/+8tWDBAmvu3LnWihUrrMbGxut1/EnF7iy+/fZba+XKlVZOTo61cOFC6+mnn+bvxTh59tlnh/2cmPH6+u2yLMsav/YCAAAYH466JgYAAOBaETEAAMBIRAwAADASEQMAAIxExAAAACMRMQAAwEhEDAAAMBIRAwAAjETEAAAAIxExAADASEQMAAAwEhEDAACM9H/S1SBAnzjyDQAAAABJRU5ErkJggg=="
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "x = []\n",
    "y = []\n",
    "\n",
    "symbol = \"AAPL\"\n",
    "\n",
    "x = range(5)\n",
    "y = [5,10,12,15,11]\n",
    "\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "scatter = plotter.m_scatter(x,y,c=[0,0,0,0,0], s=[25,25,25,25,25], m=['a','b','c','d','e'], ax=ax)\n",
    "\n",
    "plt.show()"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [
    "df_groups = statistics.kpod_clustering(all_rankings)\n",
    "val = 0\n",
    "#plt.plot(\n",
    "#    df_groups['group'],\n",
    "#    np.zeros_like(df_groups['group']) + val,\n",
    "#    marker=r\"$ {} $\".format(df_groups['group'].index[2], markersize=25)\n",
    "#)\n",
    "#plt.show()\n",
    "\n",
    "df_groups['group'].index[2]"
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Checking for quality of study design\n",
    "Is there an influence of gender, academic roles, scientific discipline to the data?\n",
    "Is there a time or order bias in it?\n",
    "Disconfirming the corresponding claims would increase the quality of the findings above."
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
   "execution_count": null,
   "source": [
    "# Our chosen population was unpaired, so we got independent data and use independent methods.\n",
    "# Are our dependent variables normally / gaussian distributed? \"D’Agostino-Pearson normality test\" has the answer.\n",
    "# Just use the two-tailed tests. one-tailed do not apply for our discipline\n",
    "# Even though our dependent variables were collected with 7-point-Likert-scales, the amount of possible outcomes is enough to justify a parametric statistical approach. Usually it is not recommended to do this with scores in fewer than a dozen categories, but including the means of the answers, justifies this option.\n",
    "# gender, academic role and scientific discipline are qualitative and nominal -> independent t-test?!\n",
    "# time is continuous and ratio data\n",
    "# worked on pages is quantitative, discrete and in an interval\n",
    "\n",
    "# according to figure 4 in https://www.biochemia-medica.com/assets/images/upload/xml_tif/Marusteri_M_-_Comparing_groups_for_statistical_differences.pdf I derive the (Welch corrected) unpaired t-test to check for gender, academic role and scientific discipline (if they are not equal in variance)\n",
    "\n",
    "# create DFs for every variable\n",
    "df_sex = df_filtered['DE02'] \\\n",
    "            .replace(1, 'male') \\\n",
    "            .replace(2, 'female') \\\n",
    "            .replace(3, 'diverse') \\\n",
    "            .replace(-1, 'not mentioned')\n",
    "\n",
    "# group df_filtered according to these DFs\n",
    "\n",
    "# check for common variance"
   ],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
Jan Bernoth's avatar
Jan Bernoth committed
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
Jan Bernoth's avatar
Jan Bernoth committed
}