Skip to content

Instantly share code, notes, and snippets.

@tango4567
Created April 6, 2024 09:41
Show Gist options
  • Save tango4567/a51d9c092186f23790a52c5426a29864 to your computer and use it in GitHub Desktop.
Save tango4567/a51d9c092186f23790a52c5426a29864 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "726fdf6d",
"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>sr.no</th>\n",
" <th>name</th>\n",
" <th>matches</th>\n",
" <th>runs</th>\n",
" <th>catches</th>\n",
" <th>wickets</th>\n",
" <th>stumpings</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>Anil Dalpat</td>\n",
" <td>122</td>\n",
" <td>6755</td>\n",
" <td>56</td>\n",
" <td>12</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>Rohan Kanhay</td>\n",
" <td>144</td>\n",
" <td>1256</td>\n",
" <td>76</td>\n",
" <td>178</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>Avdhoot Dighe</td>\n",
" <td>265</td>\n",
" <td>8954</td>\n",
" <td>120</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>Bahubali</td>\n",
" <td>10</td>\n",
" <td>756</td>\n",
" <td>6</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>Leeladhar</td>\n",
" <td>234</td>\n",
" <td>2866</td>\n",
" <td>105</td>\n",
" <td>376</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>6</td>\n",
" <td>Pradyumna</td>\n",
" <td>177</td>\n",
" <td>5877</td>\n",
" <td>47</td>\n",
" <td>122</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>7</td>\n",
" <td>Dinesh Roy</td>\n",
" <td>211</td>\n",
" <td>8537</td>\n",
" <td>112</td>\n",
" <td>16</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>8</td>\n",
" <td>Parmeshwar</td>\n",
" <td>245</td>\n",
" <td>9466</td>\n",
" <td>53</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>9</td>\n",
" <td>Ali Durrani</td>\n",
" <td>55</td>\n",
" <td>2756</td>\n",
" <td>12</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>10</td>\n",
" <td>Litesh Singh</td>\n",
" <td>89</td>\n",
" <td>1099</td>\n",
" <td>46</td>\n",
" <td>49</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" sr.no name matches runs catches wickets stumpings\n",
"0 1 Anil Dalpat 122 6755 56 12 0\n",
"1 2 Rohan Kanhay 144 1256 76 178 0\n",
"2 3 Avdhoot Dighe 265 8954 120 0 0\n",
"3 4 Bahubali 10 756 6 11 3\n",
"4 5 Leeladhar 234 2866 105 376 0\n",
"5 6 Pradyumna 177 5877 47 122 0\n",
"6 7 Dinesh Roy 211 8537 112 16 0\n",
"7 8 Parmeshwar 245 9466 53 0 0\n",
"8 9 Ali Durrani 55 2756 12 26 0\n",
"9 10 Litesh Singh 89 1099 46 49 0"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"\n",
"## 1. Read the file in DataFrame\n",
"df = pd.read_csv('../data/cricket.csv')\n",
"df"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "e56c5c2c",
"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>name</th>\n",
" <th>runs</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Anil Dalpat</td>\n",
" <td>6755</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Rohan Kanhay</td>\n",
" <td>1256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Avdhoot Dighe</td>\n",
" <td>8954</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Bahubali</td>\n",
" <td>756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Leeladhar</td>\n",
" <td>2866</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Pradyumna</td>\n",
" <td>5877</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>Dinesh Roy</td>\n",
" <td>8537</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Parmeshwar</td>\n",
" <td>9466</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Ali Durrani</td>\n",
" <td>2756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Litesh Singh</td>\n",
" <td>1099</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" name runs\n",
"0 Anil Dalpat 6755\n",
"1 Rohan Kanhay 1256\n",
"2 Avdhoot Dighe 8954\n",
"3 Bahubali 756\n",
"4 Leeladhar 2866\n",
"5 Pradyumna 5877\n",
"6 Dinesh Roy 8537\n",
"7 Parmeshwar 9466\n",
"8 Ali Durrani 2756\n",
"9 Litesh Singh 1099"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 2. List the name of circketer and their respective run\n",
"df[['name','runs']]"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "985059ef",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"790"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 3. Find Total wickets taken by them\n",
"#wickets = df[df['wickets'] > 0]\n",
"df['wickets'].sum()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "826f9f15",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"63.3"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 4. Find average of catches taken\n",
"df['catches'].mean()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "18b283af",
"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>sr.no</th>\n",
" <th>name</th>\n",
" <th>matches</th>\n",
" <th>runs</th>\n",
" <th>catches</th>\n",
" <th>wickets</th>\n",
" <th>stumpings</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>Bahubali</td>\n",
" <td>10</td>\n",
" <td>756</td>\n",
" <td>6</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" sr.no name matches runs catches wickets stumpings\n",
"3 4 Bahubali 10 756 6 11 3"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 5. Find the name of wicketkeeper\n",
"wicketKeeper = df[df['stumpings'] != 0 ]\n",
"wicketKeeper"
]
},
{
"cell_type": "code",
"execution_count": 40,
"id": "2aafdedb",
"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>sr.no</th>\n",
" <th>name</th>\n",
" <th>matches</th>\n",
" <th>runs</th>\n",
" <th>catches</th>\n",
" <th>wickets</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>Leeladhar</td>\n",
" <td>234</td>\n",
" <td>2866</td>\n",
" <td>105</td>\n",
" <td>376</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" sr.no name matches runs catches wickets\n",
"4 5 Leeladhar 234 2866 105 376"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 6. Find the name of bolwer who played higest number of matches\n",
"\n",
"higestDf = df[(df['stumpings'] == 0) & (df['wickets'] != 0) & ((df['wickets'].max() > df['matches'].max()))]\n",
"higestDf.sort_values(by='matches', ascending=False).drop(['stumpings'], axis=1).iloc[0:1]\n",
"\n",
"# higestDf.sort_values(by='matches', ascending=False).drop(['stumpings', 'catch'], axis =1).iloc[0:1]\n",
"\n",
"# df[(df['matches'].max()) & (df['wickets'] > 0) & (df['stumpings'] == 0)]\n",
"\n",
"# df[(df['wickets'] != 0)]\n"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "71f8220c",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"79.0"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 7. Find average of all the bolower\n",
"wickets = df['wickets'].mean()\n",
"wickets"
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "e4713260",
"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>sr.no</th>\n",
" <th>name</th>\n",
" <th>matches</th>\n",
" <th>runs</th>\n",
" <th>catches</th>\n",
" <th>wickets</th>\n",
" <th>stumpings</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>Anil Dalpat</td>\n",
" <td>122</td>\n",
" <td>6755</td>\n",
" <td>56</td>\n",
" <td>12</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>Rohan Kanhay</td>\n",
" <td>144</td>\n",
" <td>1256</td>\n",
" <td>76</td>\n",
" <td>178</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>Avdhoot Dighe</td>\n",
" <td>265</td>\n",
" <td>8954</td>\n",
" <td>120</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>Bahubali</td>\n",
" <td>10</td>\n",
" <td>756</td>\n",
" <td>6</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>Leeladhar</td>\n",
" <td>234</td>\n",
" <td>2866</td>\n",
" <td>105</td>\n",
" <td>376</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>6</td>\n",
" <td>Pradyumna</td>\n",
" <td>177</td>\n",
" <td>5877</td>\n",
" <td>47</td>\n",
" <td>122</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>7</td>\n",
" <td>Dinesh Roy</td>\n",
" <td>211</td>\n",
" <td>8537</td>\n",
" <td>112</td>\n",
" <td>16</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>8</td>\n",
" <td>Parmeshwar</td>\n",
" <td>245</td>\n",
" <td>9466</td>\n",
" <td>53</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>9</td>\n",
" <td>Ali Durrani</td>\n",
" <td>55</td>\n",
" <td>2756</td>\n",
" <td>12</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>10</td>\n",
" <td>Litesh Singh</td>\n",
" <td>89</td>\n",
" <td>1099</td>\n",
" <td>46</td>\n",
" <td>49</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" sr.no name matches runs catches wickets stumpings\n",
"0 1 Anil Dalpat 122 6755 56 12 0\n",
"1 2 Rohan Kanhay 144 1256 76 178 0\n",
"2 3 Avdhoot Dighe 265 8954 120 0 0\n",
"3 4 Bahubali 10 756 6 11 3\n",
"4 5 Leeladhar 234 2866 105 376 0\n",
"5 6 Pradyumna 177 5877 47 122 0\n",
"6 7 Dinesh Roy 211 8537 112 16 0\n",
"7 8 Parmeshwar 245 9466 53 0 0\n",
"8 9 Ali Durrani 55 2756 12 26 0\n",
"9 10 Litesh Singh 89 1099 46 49 0"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 8. Find name of the bolwer with least bowling average\n",
"df"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "53ebf2c7",
"metadata": {},
"outputs": [],
"source": [
"## 9. Print information about all players whose catches per match ration\n",
"## is greater than 0.2 store it in a csv file\n",
"\n",
"dfCatchRatio = df[df['catches'] / df['matches'] > 0.2]\n",
"dfCatchRatio.to_csv('cric.csv',index = False)\n",
"\n",
"# dfCatchRatio[['name', 'matches','catches', 'catch']]"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "ec9eb15b",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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OFG+//57mT17tpw/f14mTpwokyZNklmzZinLTJo0SWbOnCkRERFy9OhRyZ07t9SvX18SEhKUZdq3by/nzp2THTt2yKZNm2T//v0SFBSkzI+Pjxd/f39xcHCQEydOyOTJk2X06NESGRmZCatMREREn5Kc77PwoUOHpFmzZhIQECAiIo6OjrJixQo5duyYiLyu1ZkxY4YMHz5cmjVrJiIiP/74o1hbW8tPP/0kbdu2lfPnz8vWrVvl+PHj4u7uLiIis2bNkkaNGsmUKVPE1tZWli1bJklJSbJw4UIxMTGRsmXLSnR0tEybNk0nFBERERH9m/eq2alWrZrs2rVLLl26JCIip0+floMHD0rDhg1FROTatWsSExMjfn5+ymssLS3F09NTDh8+LCIihw8flnz58ilBR0TEz89PcuTIIUePHlWWqVmzppiYmCjL1K9fXy5evCiPHj3KsGyJiYkSHx+v80dERET0XjU7Q4cOlfj4eHFxcREjIyNJSUmRcePGSfv27UVEJCYmRkRErK2tdV5nbW2tzIuJiRErKyvdQuTMKQUKFNBZxsnJKd17aOflz58/XdnCw8NlzJgx77M6RERE9Al4r5qd1atXy7Jly2T58uVy8uRJiYqKkilTpkhUVNTHKt87Cw0NlSdPnih/t27d0neRiIiIyAC8V83OoEGDZOjQodK2bVsREXFzc5MbN25IeHi4dO7cWWxsbEREJDY2VooUKaK8LjY2VipWrCgiIjY2NhIXF6fzvsnJyfLw4UPl9TY2NhIbG6uzjPbf2mXelCtXLsmVK9f7rA4RERF9At6rZufFixeSI4fuS4yMjCQ1NVVERJycnMTGxkZ27dqlzI+Pj5ejR4+Kt7e3iIh4e3vL48eP5cSJE8oyu3fvltTUVPH09FSW2b9/v7x69UpZZseOHVK6dOkMb2ERERERvc17hZ0mTZrIuHHjZPPmzXL9+nXZsGGDTJs2TVq0aCEiIhqNRvr27SvffvutbNy4Uc6ePSudOnUSW1tbad68uYiIlClTRho0aCBffvmlHDt2TH777TcJCQmRtm3biq2trYiIfP7552JiYiLdunWTc+fOyapVq+S7776T/v37Z+7aExERkeq9122sWbNmyYgRI6Rnz54SFxcntra28tVXX8nIkSOVZQYPHizPnz+XoKAgefz4sVSvXl22bt0qpqamyjLLli2TkJAQ8fX1lRw5ckhgYKDMnDlTmW9paSnbt2+X4OBgqVKlihQqVEhGjhzJbudERET03jRIO/yxisTHx4ulpaU8efJELCws9F0cek+OQzd/9M+4PiHgo38GUWZTw76hhnWgj+djnL/5bCwiIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlI1hh0iIiJSNYYdIiIiUjWGHSIiIlK1nPougCFxHLr5o3/G9QkBH/0ziIiI6H9Ys0NERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqvbeYefOnTvSoUMHKViwoJiZmYmbm5v8/vvvynwAMnLkSClSpIiYmZmJn5+fXL58Wec9Hj58KO3btxcLCwvJly+fdOvWTZ49e6azzJkzZ6RGjRpiamoqdnZ2MmnSpA9cRSIiIvqUvVfYefTokfj4+IixsbH8+uuv8ueff8rUqVMlf/78yjKTJk2SmTNnSkREhBw9elRy584t9evXl4SEBGWZ9u3by7lz52THjh2yadMm2b9/vwQFBSnz4+Pjxd/fXxwcHOTEiRMyefJkGT16tERGRmbCKhMREdGnJOf7LDxx4kSxs7OTRYsWKdOcnJyU/wcgM2bMkOHDh0uzZs1EROTHH38Ua2tr+emnn6Rt27Zy/vx52bp1qxw/flzc3d1FRGTWrFnSqFEjmTJlitja2sqyZcskKSlJFi5cKCYmJlK2bFmJjo6WadOm6YQiIiIion/zXjU7GzduFHd3d2nVqpVYWVlJpUqVZP78+cr8a9euSUxMjPj5+SnTLC0txdPTUw4fPiwiIocPH5Z8+fIpQUdExM/PT3LkyCFHjx5VlqlZs6aYmJgoy9SvX18uXrwojx49yrBsiYmJEh8fr/NHRERE9F5h5+rVq/L9999LyZIlZdu2bdKjRw/p3bu3REVFiYhITEyMiIhYW1vrvM7a2lqZFxMTI1ZWVjrzc+bMKQUKFNBZJqP3SPsZbwoPDxdLS0vlz87O7n1WjYiIiFTqvcJOamqqVK5cWcaPHy+VKlWSoKAg+fLLLyUiIuJjle+dhYaGypMnT5S/W7du6btIREREZADeK+wUKVJEXF1ddaaVKVNGbt68KSIiNjY2IiISGxurs0xsbKwyz8bGRuLi4nTmJycny8OHD3WWyeg90n7Gm3LlyiUWFhY6f0RERETvFXZ8fHzk4sWLOtMuXbokDg4OIvK6sbKNjY3s2rVLmR8fHy9Hjx4Vb29vERHx9vaWx48fy4kTJ5Rldu/eLampqeLp6akss3//fnn16pWyzI4dO6R06dI6Pb+IiIiI/s17hZ1+/frJkSNHZPz48XLlyhVZvny5REZGSnBwsIiIaDQa6du3r3z77beyceNGOXv2rHTq1ElsbW2lefPmIvK6JqhBgwby5ZdfyrFjx+S3336TkJAQadu2rdja2oqIyOeffy4mJibSrVs3OXfunKxatUq+++476d+/f+auPREREanee3U99/DwkA0bNkhoaKh888034uTkJDNmzJD27dsrywwePFieP38uQUFB8vjxY6levbps3bpVTE1NlWWWLVsmISEh4uvrKzly5JDAwECZOXOmMt/S0lK2b98uwcHBUqVKFSlUqJCMHDmS3c6J6IM5Dt380T/j+oSAj/4ZRPT+3ivsiIg0btxYGjdu/Nb5Go1GvvnmG/nmm2/eukyBAgVk+fLl//g55cuXlwMHDrxv8YiIiIh08NlYREREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkav8p7EyYMEE0Go307dtXmZaQkCDBwcFSsGBByZMnjwQGBkpsbKzO627evCkBAQFibm4uVlZWMmjQIElOTtZZZu/evVK5cmXJlSuXlChRQhYvXvxfikpERESfqA8OO8ePH5d58+ZJ+fLldab369dPfvnlF1mzZo3s27dP7t69K5999pkyPyUlRQICAiQpKUkOHTokUVFRsnjxYhk5cqSyzLVr1yQgIEDq1Kkj0dHR0rdvX+nevbts27btQ4tLREREn6gPCjvPnj2T9u3by/z58yV//vzK9CdPnsgPP/wg06ZNk7p160qVKlVk0aJFcujQITly5IiIiGzfvl3+/PNPWbp0qVSsWFEaNmwoY8eOlTlz5khSUpKIiERERIiTk5NMnTpVypQpIyEhIdKyZUuZPn16JqwyERERfUo+KOwEBwdLQECA+Pn56Uw/ceKEvHr1Sme6i4uL2Nvby+HDh0VE5PDhw+Lm5ibW1tbKMvXr15f4+Hg5d+6cssyb712/fn3lPYiIiIjeVc73fcHKlSvl5MmTcvz48XTzYmJixMTERPLly6cz3draWmJiYpRl0gYd7XztvH9aJj4+Xl6+fClmZmbpPjsxMVESExOVf8fHx7/vqhEREZEKvVfNzq1bt6RPnz6ybNkyMTU1/Vhl+iDh4eFiaWmp/NnZ2em7SERERGQA3ivsnDhxQuLi4qRy5cqSM2dOyZkzp+zbt09mzpwpOXPmFGtra0lKSpLHjx/rvC42NlZsbGxERMTGxiZd7yztv/9tGQsLiwxrdUREQkND5cmTJ8rfrVu33mfViIiISKXeK+z4+vrK2bNnJTo6Wvlzd3eX9u3bK/9vbGwsu3btUl5z8eJFuXnzpnh7e4uIiLe3t5w9e1bi4uKUZXbs2CEWFhbi6uqqLJP2PbTLaN8jI7ly5RILCwudPyIiIqL3arOTN29eKVeunM603LlzS8GCBZXp3bp1k/79+0uBAgXEwsJCevXqJd7e3uLl5SUiIv7+/uLq6iodO3aUSZMmSUxMjAwfPlyCg4MlV65cIiLy9ddfy+zZs2Xw4MHStWtX2b17t6xevVo2b96cGetMREREn5D3bqD8b6ZPny45cuSQwMBASUxMlPr168vcuXOV+UZGRrJp0ybp0aOHeHt7S+7cuaVz587yzTffKMs4OTnJ5s2bpV+/fvLdd99JsWLFZMGCBVK/fv3MLi4RERGp3H8OO3v37tX5t6mpqcyZM0fmzJnz1tc4ODjIli1b/vF9a9euLadOnfqvxSMiIqJPHJ+NRURERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqsawQ0RERKrGsENERESqxrBDREREqpZT3wUgIsPnOHTzR33/6xMCPur7E9GnjTU7REREpGoMO0RERKRqDDtERESkamyzQ0RE9AE+dls2EbZnyyys2SEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVWPYISIiIlVj2CEiIiJVY9ghIiIiVXuvsBMeHi4eHh6SN29esbKykubNm8vFixd1lklISJDg4GApWLCg5MmTRwIDAyU2NlZnmZs3b0pAQICYm5uLlZWVDBo0SJKTk3WW2bt3r1SuXFly5colJUqUkMWL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5erVqxIWFmaw4eDXX3+VNm3ayMGDB6V8+fKSkJAg48ePl2+//VYqVqwobdu2FT8/P6lcubLO6wyldoqIiD4tDDtZLDY2VsaPHy+//fabtG3bVgYOHCgir7uev3n/21DG0clIcHCwiIjMmTNHRETKli0rpUqVkhIlSsiZM2dkx44d8sMPP+jc3iIiItIHXmZnMWtrawkNDZVx48bJ2rVrJSUlRYYMGSImJibpwo2hBh0RkcqVK8uiRYvk0aNH4uvrK/nz55eoqCixsLCQO3fuyMGDByUwMFDfxSQiImLNjr7ExMTI+PHj5cSJE1KnTh359ttv9V2k91a1alX5/fffpWbNmrJ+/XqlYXVavHVFRET6xq7nemJjYyNhYWHi7OwscXFxkp0yp7asvXv3lrJly8rUqVOlQIECGa4Dgw4REekba3b07OHDh5IvXz7JkSOHQfW6ehd37twRDw8P6d27twwdOlTfxSEiIsoQa3b0rECBAsow39kp6IiIFC1aVEJDQ2XKlCny559/6rs4REREGeI9BgORXYf5btSokfz+++/i4uKi76IQERFliLex6D/T3n4z5K7yRET06WLYISIiIlXLnvdOiIiIiN4Rww4RERGpGsMOERERqRrDDhEREakaww4RERGpGsMOERERqRrDDhEREakaww4RERGpGsMOEWWZ2rVrS+/evWXw4MFSoEABsbGxkdGjRyvzp02bJm5ubpI7d26xs7OTnj17yrNnz5T5ixcvlnz58smmTZukdOnSYm5uLi1btpQXL15IVFSUODo6Sv78+aV3796SkpKivC4xMVEGDhwoRYsWldy5c4unp6fs3bs3C9eciPSJYYeIslRUVJTkzp1bjh49KpMmTZJvvvlGduzYISKvnxE3c+ZMOXfunERFRcnu3btl8ODBOq9/8eKFzJw5U1auXClbt26VvXv3SosWLWTLli2yZcsWWbJkicybN0/Wrl2rvCYkJEQOHz4sK1eulDNnzkirVq2kQYMGcvny5SxddyLSDz4ugoiyTO3atSUlJUUOHDigTKtatarUrVtXJkyYkG75tWvXytdffy0PHjwQkdc1O126dJErV66Is7OziIh8/fXXsmTJEomNjZU8efKIiEiDBg3E0dFRIiIi5ObNm1K8eHG5efOm2NraKu/t5+cnVatWlfHjx3/MVSYiA8CnnhNRlipfvrzOv4sUKSJxcXEiIrJz504JDw+XCxcuSHx8vCQnJ0tCQoK8ePFCzM3NRUTE3NxcCToiItbW1uLo6KgEHe007XuePXtWUlJSpFSpUjqfm5iYKAULFvwo60hEhoVhh4iylLGxsc6/NRqNpKamyvXr16Vx48bSo0cPGTdunBQoUEAOHjwo3bp1k6SkJCXsZPT6t72niMizZ8/EyMhITpw4IUZGRjrLpQ1IRKReDDtEZBBOnDghqampMnXqVMmR43VzwtWrV//n961UqZKkpKRIXFyc1KhR4z+/HxFlP2ygTEQGoUSJEvLq1SuZNWuWXL16VZYsWSIRERH/+X1LlSol7du3l06dOsn69evl2rVrcuzYMQkPD5fNmzdnQsmJyNAx7BCRQahQoYJMmzZNJk6cKOXKlZNly5ZJeHh4prz3okWLpFOnTjJgwAApXbq0NG/eXI4fPy729vaZ8v5EZNjYG4uIiIhUjTU7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkagw7REREpGoMO0RERKRqDDtERESkav8HWHmQio/pS/EAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"## 10 Draw at bar chart of playr name again their runs\n",
"# dfx = df.plot.bar(y='runs', rot=0)\n",
"dfy = df.plot.bar(x='name', y='runs', rot=45)\n",
"# dfy.plot.hist()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "7ed20166",
"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>sr.no</th>\n",
" <th>name</th>\n",
" <th>matches</th>\n",
" <th>runs</th>\n",
" <th>catches</th>\n",
" <th>wickets</th>\n",
" <th>stumpings</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>Bahubali</td>\n",
" <td>10</td>\n",
" <td>756</td>\n",
" <td>6</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>10</td>\n",
" <td>Litesh Singh</td>\n",
" <td>89</td>\n",
" <td>1099</td>\n",
" <td>46</td>\n",
" <td>49</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>Rohan Kanhay</td>\n",
" <td>144</td>\n",
" <td>1256</td>\n",
" <td>76</td>\n",
" <td>178</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>9</td>\n",
" <td>Ali Durrani</td>\n",
" <td>55</td>\n",
" <td>2756</td>\n",
" <td>12</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>Leeladhar</td>\n",
" <td>234</td>\n",
" <td>2866</td>\n",
" <td>105</td>\n",
" <td>376</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>6</td>\n",
" <td>Pradyumna</td>\n",
" <td>177</td>\n",
" <td>5877</td>\n",
" <td>47</td>\n",
" <td>122</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>Anil Dalpat</td>\n",
" <td>122</td>\n",
" <td>6755</td>\n",
" <td>56</td>\n",
" <td>12</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>7</td>\n",
" <td>Dinesh Roy</td>\n",
" <td>211</td>\n",
" <td>8537</td>\n",
" <td>112</td>\n",
" <td>16</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>Avdhoot Dighe</td>\n",
" <td>265</td>\n",
" <td>8954</td>\n",
" <td>120</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>8</td>\n",
" <td>Parmeshwar</td>\n",
" <td>245</td>\n",
" <td>9466</td>\n",
" <td>53</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" sr.no name matches runs catches wickets stumpings\n",
"3 4 Bahubali 10 756 6 11 3\n",
"9 10 Litesh Singh 89 1099 46 49 0\n",
"1 2 Rohan Kanhay 144 1256 76 178 0\n",
"8 9 Ali Durrani 55 2756 12 26 0\n",
"4 5 Leeladhar 234 2866 105 376 0\n",
"5 6 Pradyumna 177 5877 47 122 0\n",
"0 1 Anil Dalpat 122 6755 56 12 0\n",
"6 7 Dinesh Roy 211 8537 112 16 0\n",
"2 3 Avdhoot Dighe 265 8954 120 0 0\n",
"7 8 Parmeshwar 245 9466 53 0 0"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 11. Sort and print information about players by ascending order of runs\n",
"df.sort_values(by=['runs'])"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "7e229992",
"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>sr.no</th>\n",
" <th>name</th>\n",
" <th>matches</th>\n",
" <th>runs</th>\n",
" <th>catches</th>\n",
" <th>wickets</th>\n",
" <th>stumpings</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>Rohan Kanhay</td>\n",
" <td>144</td>\n",
" <td>1256</td>\n",
" <td>76</td>\n",
" <td>178</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>Bahubali</td>\n",
" <td>10</td>\n",
" <td>756</td>\n",
" <td>6</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>Leeladhar</td>\n",
" <td>234</td>\n",
" <td>2866</td>\n",
" <td>105</td>\n",
" <td>376</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" sr.no name matches runs catches wickets stumpings\n",
"1 2 Rohan Kanhay 144 1256 76 178 0\n",
"3 4 Bahubali 10 756 6 11 3\n",
"4 5 Leeladhar 234 2866 105 376 0"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## 12. print the names of player whose wickets are greater than match\n",
"greater = df[(df['wickets'] >= df['matches'])]\n",
"greater"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "f62bbdc7",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "3ccff12a",
"metadata": {},
"outputs": [],
"source": []
}
],
"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.11.7"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment