great-ai/docs/surveys/surveys.ipynb

1167 lines
60 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>How many years of software engineering experience do you have?</th>\n",
" <th>How many years of data science experience do you have?</th>\n",
" <th>Write reusable scripts for data cleaning and merging</th>\n",
" <th>Make datasets available on shared infrastructure</th>\n",
" <th>Use versioning for data, model, configurations and training scripts</th>\n",
" <th>Continuously monitor the behaviour of deployed models</th>\n",
" <th>Log production predictions with the models version and input data</th>\n",
" <th>Store models in a single format for ease of use</th>\n",
" <th>Equip with web interface, package image, provide REST API</th>\n",
" <th>Provide simple API for serving batch and real-time requests</th>\n",
" <th>Integration with existing data infrastructure</th>\n",
" <th>Querying, visualising and understanding metrics and event logging</th>\n",
" <th>Allow experimentation with the inference code</th>\n",
" <th>Keep the models API and documentation together</th>\n",
" <th>Parallelise feature extraction</th>\n",
" <th>Cache predictions</th>\n",
" <th>Async support for top-down chaining models</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Strongly agree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>6</td>\n",
" <td>2</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly disagree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1</td>\n",
" <td>5</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>Agree</td>\n",
" <td>Agree</td>\n",
" <td>Disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Not applicable</td>\n",
" <td>Not applicable</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Disagree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Not applicable</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1</td>\n",
" <td>7</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Not applicable</td>\n",
" <td>Not applicable</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Not applicable</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>6</td>\n",
" <td>0</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Not applicable</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>Disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Agree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Not applicable</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly agree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>Disagree</td>\n",
" <td>Neither agree nor disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Agree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Not applicable</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Strongly disagree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Disagree</td>\n",
" <td>Strongly disagree</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>7</td>\n",
" <td>1</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly disagree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Not applicable</td>\n",
" <td>Agree</td>\n",
" <td>Agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Strongly agree</td>\n",
" <td>Agree</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" How many years of software engineering experience do you have? \\\n",
"0 3 \n",
"1 6 \n",
"2 1 \n",
"3 3 \n",
"4 1 \n",
"5 6 \n",
"6 2 \n",
"7 1 \n",
"8 0 \n",
"9 7 \n",
"\n",
" How many years of data science experience do you have? \\\n",
"0 1 \n",
"1 2 \n",
"2 5 \n",
"3 3 \n",
"4 7 \n",
"5 0 \n",
"6 2 \n",
"7 2 \n",
"8 1 \n",
"9 1 \n",
"\n",
" Write reusable scripts for data cleaning and merging \\\n",
"0 Strongly agree \n",
"1 Neither agree nor disagree \n",
"2 Strongly disagree \n",
"3 Agree \n",
"4 Neither agree nor disagree \n",
"5 Strongly agree \n",
"6 Disagree \n",
"7 Disagree \n",
"8 Strongly disagree \n",
"9 Strongly agree \n",
"\n",
" Make datasets available on shared infrastructure \\\n",
"0 Agree \n",
"1 Agree \n",
"2 Disagree \n",
"3 Agree \n",
"4 Disagree \n",
"5 Strongly agree \n",
"6 Neither agree nor disagree \n",
"7 Neither agree nor disagree \n",
"8 Disagree \n",
"9 Strongly agree \n",
"\n",
" Use versioning for data, model, configurations and training scripts \\\n",
"0 Strongly agree \n",
"1 Neither agree nor disagree \n",
"2 Disagree \n",
"3 Disagree \n",
"4 Neither agree nor disagree \n",
"5 Agree \n",
"6 Agree \n",
"7 Disagree \n",
"8 Strongly disagree \n",
"9 Agree \n",
"\n",
" Continuously monitor the behaviour of deployed models \\\n",
"0 Neither agree nor disagree \n",
"1 Agree \n",
"2 Strongly disagree \n",
"3 Neither agree nor disagree \n",
"4 Disagree \n",
"5 Neither agree nor disagree \n",
"6 Strongly agree \n",
"7 Agree \n",
"8 Disagree \n",
"9 Strongly agree \n",
"\n",
" Log production predictions with the models version and input data \\\n",
"0 Strongly agree \n",
"1 Agree \n",
"2 Disagree \n",
"3 Agree \n",
"4 Strongly disagree \n",
"5 Agree \n",
"6 Neither agree nor disagree \n",
"7 Disagree \n",
"8 Strongly disagree \n",
"9 Agree \n",
"\n",
" Store models in a single format for ease of use \\\n",
"0 Strongly agree \n",
"1 Neither agree nor disagree \n",
"2 Strongly disagree \n",
"3 Not applicable \n",
"4 Not applicable \n",
"5 Strongly agree \n",
"6 Disagree \n",
"7 Strongly disagree \n",
"8 Disagree \n",
"9 Agree \n",
"\n",
" Equip with web interface, package image, provide REST API \\\n",
"0 Strongly agree \n",
"1 Disagree \n",
"2 Strongly disagree \n",
"3 Not applicable \n",
"4 Not applicable \n",
"5 Agree \n",
"6 Strongly agree \n",
"7 Strongly agree \n",
"8 Agree \n",
"9 Strongly agree \n",
"\n",
" Provide simple API for serving batch and real-time requests \\\n",
"0 Strongly agree \n",
"1 Strongly disagree \n",
"2 Neither agree nor disagree \n",
"3 Neither agree nor disagree \n",
"4 Disagree \n",
"5 Strongly agree \n",
"6 Disagree \n",
"7 Strongly agree \n",
"8 Strongly disagree \n",
"9 Strongly disagree \n",
"\n",
" Integration with existing data infrastructure \\\n",
"0 Strongly agree \n",
"1 Disagree \n",
"2 Strongly disagree \n",
"3 Agree \n",
"4 Strongly disagree \n",
"5 Agree \n",
"6 Disagree \n",
"7 Strongly disagree \n",
"8 Disagree \n",
"9 Strongly agree \n",
"\n",
" Querying, visualising and understanding metrics and event logging \\\n",
"0 Strongly agree \n",
"1 Strongly disagree \n",
"2 Disagree \n",
"3 Disagree \n",
"4 Disagree \n",
"5 Strongly agree \n",
"6 Agree \n",
"7 Disagree \n",
"8 Strongly disagree \n",
"9 Not applicable \n",
"\n",
" Allow experimentation with the inference code \\\n",
"0 Strongly agree \n",
"1 Disagree \n",
"2 Neither agree nor disagree \n",
"3 Agree \n",
"4 Disagree \n",
"5 Disagree \n",
"6 Neither agree nor disagree \n",
"7 Agree \n",
"8 Disagree \n",
"9 Agree \n",
"\n",
" Keep the models API and documentation together \\\n",
"0 Strongly agree \n",
"1 Strongly disagree \n",
"2 Agree \n",
"3 Strongly agree \n",
"4 Neither agree nor disagree \n",
"5 Strongly agree \n",
"6 Neither agree nor disagree \n",
"7 Strongly disagree \n",
"8 Strongly disagree \n",
"9 Agree \n",
"\n",
" Parallelise feature extraction Cache predictions \\\n",
"0 Strongly agree Neither agree nor disagree \n",
"1 Disagree Strongly agree \n",
"2 Strongly disagree Strongly disagree \n",
"3 Not applicable Neither agree nor disagree \n",
"4 Strongly disagree Strongly agree \n",
"5 Agree Strongly agree \n",
"6 Not applicable Disagree \n",
"7 Not applicable Strongly disagree \n",
"8 Disagree Disagree \n",
"9 Strongly agree Strongly agree \n",
"\n",
" Async support for top-down chaining models \n",
"0 Strongly agree \n",
"1 Strongly disagree \n",
"2 Disagree \n",
"3 Agree \n",
"4 Not applicable \n",
"5 Not applicable \n",
"6 Strongly agree \n",
"7 Strongly disagree \n",
"8 Strongly disagree \n",
"9 Agree "
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"\n",
"best_practices = pd.read_csv(\"Best practices assessment.csv\")\n",
"best_practices"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"m = {\n",
" \"Strongly agree\": 4 / 4,\n",
" \"Agree\": 3 / 4,\n",
" \"Neither agree nor disagree\": 2 / 4,\n",
" \"Disagree\": 1 / 4,\n",
" \"Strongly disagree\": 0 / 4,\n",
"}\n",
"\n",
"best_practices_dicts = [v.to_dict() for _, v in best_practices.iterrows()]\n",
"\n",
"best_practice_score_ds = []\n",
"best_practice_score_se = []\n",
"\n",
"for d in best_practices_dicts:\n",
" ds_experience = int(d[\"How many years of data science experience do you have?\"])\n",
" del d[\"How many years of data science experience do you have?\"]\n",
"\n",
" se_experience = int(\n",
" d[\"How many years of software engineering experience do you have?\"]\n",
" )\n",
" del d[\"How many years of software engineering experience do you have?\"]\n",
"\n",
" scores = [m[v] for v in d.values() if v != \"Not applicable\"]\n",
" score = sum(scores) / len(scores)\n",
" best_practice_score_ds.append((ds_experience, score))\n",
" best_practice_score_se.append((se_experience, score))"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-0.5440527060340572, 0.10399880919437814)"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"from scipy import stats\n",
"\n",
"best_practice_score_ds = sorted(best_practice_score_ds)\n",
"plt.scatter(\n",
" [x for x, y in best_practice_score_ds], [y for x, y in best_practice_score_ds]\n",
")\n",
"stats.pearsonr(\n",
" [x for x, y in best_practice_score_ds], [y for x, y in best_practice_score_ds]\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.6722543326178704, 0.03321124881554773)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"best_practice_score_se = sorted(best_practice_score_se)\n",
"\n",
"\n",
"plt.scatter(\n",
" [x for x, y in best_practice_score_se], [y for x, y in best_practice_score_se]\n",
")\n",
"stats.pearsonr(\n",
" [x for x, y in best_practice_score_se], [y for x, y in best_practice_score_se]\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>I believe the use of GreatAI improves the quality of AI deployments.</th>\n",
" <th>I believe the use of GreatAI would increase my productivity.</th>\n",
" <th>I believe the use of GreatAI can lead to robust and trustworthy deployments.</th>\n",
" <th>Overall, I found GreatAI useful when working with AI.</th>\n",
" <th>I found the GreatAI easy to learn.</th>\n",
" <th>I found it is easy to employ GreatAI in practice.</th>\n",
" <th>I found it is easy to integrate GreatAI into an existing project.</th>\n",
" <th>Overall, I found GreatAI easy to use.</th>\n",
" <th>Assuming GreatAI is applicable to my task, I predict that I will use it on a regular basis in the future.</th>\n",
" <th>Overall, I intend to use the GreatAI in my personal or professional projects.</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>5</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>5</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>6</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>3</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>7</td>\n",
" <td>2</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>5</td>\n",
" <td>6</td>\n",
" <td>5</td>\n",
" <td>6</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" I believe the use of GreatAI improves the quality of AI deployments. \\\n",
"0 7 \n",
"1 7 \n",
"2 4 \n",
"3 6 \n",
"4 7 \n",
"5 6 \n",
"6 6 \n",
"7 7 \n",
"8 4 \n",
"9 7 \n",
"\n",
" I believe the use of GreatAI would increase my productivity. \\\n",
"0 7 \n",
"1 7 \n",
"2 4 \n",
"3 7 \n",
"4 7 \n",
"5 6 \n",
"6 6 \n",
"7 6 \n",
"8 5 \n",
"9 7 \n",
"\n",
" I believe the use of GreatAI can lead to robust and trustworthy deployments. \\\n",
"0 7 \n",
"1 6 \n",
"2 5 \n",
"3 6 \n",
"4 6 \n",
"5 6 \n",
"6 6 \n",
"7 6 \n",
"8 5 \n",
"9 7 \n",
"\n",
" Overall, I found GreatAI useful when working with AI. \\\n",
"0 7 \n",
"1 7 \n",
"2 6 \n",
"3 7 \n",
"4 7 \n",
"5 6 \n",
"6 4 \n",
"7 6 \n",
"8 5 \n",
"9 7 \n",
"\n",
" I found the GreatAI easy to learn. \\\n",
"0 7 \n",
"1 5 \n",
"2 6 \n",
"3 7 \n",
"4 4 \n",
"5 6 \n",
"6 5 \n",
"7 4 \n",
"8 7 \n",
"9 5 \n",
"\n",
" I found it is easy to employ GreatAI in practice. \\\n",
"0 7 \n",
"1 6 \n",
"2 5 \n",
"3 6 \n",
"4 5 \n",
"5 6 \n",
"6 7 \n",
"7 5 \n",
"8 2 \n",
"9 6 \n",
"\n",
" I found it is easy to integrate GreatAI into an existing project. \\\n",
"0 7 \n",
"1 7 \n",
"2 4 \n",
"3 7 \n",
"4 5 \n",
"5 6 \n",
"6 6 \n",
"7 3 \n",
"8 3 \n",
"9 5 \n",
"\n",
" Overall, I found GreatAI easy to use. \\\n",
"0 7 \n",
"1 6 \n",
"2 4 \n",
"3 6 \n",
"4 5 \n",
"5 6 \n",
"6 6 \n",
"7 5 \n",
"8 3 \n",
"9 6 \n",
"\n",
" Assuming GreatAI is applicable to my task, I predict that I will use it on a regular basis in the future. \\\n",
"0 7 \n",
"1 7 \n",
"2 5 \n",
"3 7 \n",
"4 6 \n",
"5 6 \n",
"6 7 \n",
"7 5 \n",
"8 3 \n",
"9 7 \n",
"\n",
" Overall, I intend to use the GreatAI in my personal or professional projects. \n",
"0 7 \n",
"1 7 \n",
"2 4 \n",
"3 6 \n",
"4 6 \n",
"5 6 \n",
"6 7 \n",
"7 6 \n",
"8 3 \n",
"9 7 "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tam = pd.read_csv(\"Technology acceptance model questionnaire.csv\")\n",
"tam"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.8813771517996869, array([0.688, 0.967]))"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pingouin\n",
"\n",
"pu = [\n",
" \"I believe the use of GreatAI improves the quality of AI deployments.\",\n",
" \"I believe the use of GreatAI would increase my productivity.\",\n",
" \"I believe the use of GreatAI can lead to robust and trustworthy deployments.\",\n",
" \"Overall, I found GreatAI useful when working with AI.\",\n",
"]\n",
"pingouin.cronbach_alpha(tam[pu])"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.7729220222793487, array([0.403, 0.937]))"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"peou = [\n",
" \"I found the GreatAI easy to learn.\",\n",
" \"I found it is easy to employ GreatAI in practice.\",\n",
" \"I found it is easy to integrate GreatAI into an existing project.\",\n",
" \"Overall, I found GreatAI easy to use.\",\n",
"]\n",
"pingouin.cronbach_alpha(tam[peou])"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.9538950715421304, array([0.814, 0.989]))"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"itu = [\n",
" \"Assuming GreatAI is applicable to my task, I predict that I will use it on a regular basis in the future.\",\n",
" \"Overall, I intend to use the GreatAI in my personal or professional projects.\",\n",
"]\n",
"pingouin.cronbach_alpha(tam[itu])"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>pu</th>\n",
" <th>peou</th>\n",
" <th>itu</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>7.00</td>\n",
" <td>7.00</td>\n",
" <td>7.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>6.75</td>\n",
" <td>6.00</td>\n",
" <td>7.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>4.75</td>\n",
" <td>4.75</td>\n",
" <td>4.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>6.50</td>\n",
" <td>6.50</td>\n",
" <td>6.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>6.75</td>\n",
" <td>4.75</td>\n",
" <td>6.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>6.00</td>\n",
" <td>6.00</td>\n",
" <td>6.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>5.50</td>\n",
" <td>6.00</td>\n",
" <td>7.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>6.25</td>\n",
" <td>4.25</td>\n",
" <td>5.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>4.75</td>\n",
" <td>3.75</td>\n",
" <td>3.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>7.00</td>\n",
" <td>5.50</td>\n",
" <td>7.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" pu peou itu\n",
"0 7.00 7.00 7.0\n",
"1 6.75 6.00 7.0\n",
"2 4.75 4.75 4.5\n",
"3 6.50 6.50 6.5\n",
"4 6.75 4.75 6.0\n",
"5 6.00 6.00 6.0\n",
"6 5.50 6.00 7.0\n",
"7 6.25 4.25 5.5\n",
"8 4.75 3.75 3.0\n",
"9 7.00 5.50 7.0"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tam[\"pu\"] = tam[pu].mean(1)\n",
"tam[\"peou\"] = tam[peou].mean(1)\n",
"tam[\"itu\"] = tam[itu].mean(1)\n",
"tam[[\"pu\", \"peou\", \"itu\"]]"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.5515422017785757, 0.09838124227663879)"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"stats.pearsonr(tam[\"peou\"], tam[\"pu\"])"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.8066270322592023, 0.004809023073123024)"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"stats.pearsonr(tam[\"peou\"], tam[\"itu\"])"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.7880605510627579, 0.006774486564715021)"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"stats.pearsonr(tam[\"pu\"], tam[\"itu\"])"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3.10.4 ('.env': venv)",
"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.4"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "02dd6d3afbfa9fbbe1037d64ad9014965528a1ccad21929d6e72f466389a68ad"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}