Skip to content

Instantly share code, notes, and snippets.

@heyeshuang
Created December 16, 2017 12:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save heyeshuang/fece5abbd6d1cf826dbaf9c3e76361b7 to your computer and use it in GitHub Desktop.
Save heyeshuang/fece5abbd6d1cf826dbaf9c3e76361b7 to your computer and use it in GitHub Desktop.
Zipf's law
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"see https://www.youtube.com/watch?v=fCn8zs912OE"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import timeit"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 猴子打字机实验\n",
"## 方法1"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1 2 0 1 0 2 0 0 0 2] ['12', '1', '2', '', '', '2']\n"
]
}
],
"source": [
"# monkey=np.random.randint(3,size=10)\n",
"# words=[]\n",
"# word=\"\"\n",
"# for key in monkey:\n",
"# if key==0:\n",
"# words.append(word)\n",
"# word=\"\"\n",
"# else:\n",
"# word+=str(key)\n",
"# if word!=\"\":\n",
"# words.append(word)\n",
"\n",
"# print(monkey,words)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 方法2"
]
},
{
"cell_type": "code",
"execution_count": 90,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x20a366ec358>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"[('c', 80593),\n",
" ('d', 80182),\n",
" ('a', 80168),\n",
" ('b', 79756),\n",
" ('ac', 16166),\n",
" ('cc', 16112),\n",
" ('dd', 16112),\n",
" ('ba', 16084),\n",
" ('aa', 16058),\n",
" ('ab', 16029),\n",
" ('cd', 16011),\n",
" ('ca', 16001),\n",
" ('ad', 15970),\n",
" ('dc', 15960),\n",
" ('db', 15875),\n",
" ('bc', 15871),\n",
" ('bb', 15848),\n",
" ('bd', 15846),\n",
" ('da', 15812),\n",
" ('cb', 15760),\n",
" ('bcb', 3303),\n",
" ('baa', 3302),\n",
" ('bac', 3300),\n",
" ('acc', 3288),\n",
" ('bab', 3283),\n",
" ('acd', 3279),\n",
" ('aba', 3265),\n",
" ('bba', 3264),\n",
" ('ccb', 3255),\n",
" ('abc', 3249),\n",
" ('acb', 3246),\n",
" ('adc', 3238),\n",
" ('dca', 3237),\n",
" ('cda', 3236),\n",
" ('dad', 3234),\n",
" ('dba', 3234),\n",
" ('cdd', 3229),\n",
" ('bdc', 3228),\n",
" ('dcc', 3226),\n",
" ('dbb', 3223),\n",
" ('dac', 3222),\n",
" ('bad', 3220),\n",
" ('aad', 3214),\n",
" ('ccd', 3212),\n",
" ('ada', 3212),\n",
" ('ddd', 3211),\n",
" ('abd', 3209),\n",
" ('ccc', 3207),\n",
" ('bbb', 3207),\n",
" ('aca', 3206),\n",
" ('cad', 3200),\n",
" ('abb', 3194),\n",
" ('aac', 3193),\n",
" ('dab', 3192),\n",
" ('bdb', 3191),\n",
" ('bbd', 3184),\n",
" ('bcc', 3180),\n",
" ('daa', 3176),\n",
" ('aab', 3175),\n",
" ('dbc', 3174),\n",
" ('bbc', 3171),\n",
" ('cbc', 3169),\n",
" ('cab', 3168),\n",
" ('cbd', 3166),\n",
" ('cdb', 3164),\n",
" ('bdd', 3163),\n",
" ('dda', 3162),\n",
" ('add', 3161),\n",
" ('caa', 3159),\n",
" ('adb', 3154),\n",
" ('cbb', 3154),\n",
" ('bda', 3150),\n",
" ('ddb', 3148),\n",
" ('dbd', 3143),\n",
" ('dcb', 3138),\n",
" ('cac', 3138),\n",
" ('ddc', 3134),\n",
" ('aaa', 3133),\n",
" ('bcd', 3120),\n",
" ('dcd', 3119),\n",
" ('cdc', 3116),\n",
" ('bca', 3093),\n",
" ('cca', 3088),\n",
" ('cba', 3073),\n",
" ('adda', 707),\n",
" ('ddbd', 701),\n",
" ('abcd', 695),\n",
" ('bdda', 692),\n",
" ('baca', 688),\n",
" ('dcbd', 687),\n",
" ('bcbd', 687),\n",
" ('dbbb', 686),\n",
" ('dcab', 683),\n",
" ('bbcd', 683),\n",
" ('dccb', 682),\n",
" ('acbb', 681),\n",
" ('dacc', 681),\n",
" ('addd', 680),\n",
" ('dbcd', 676),\n",
" ('abad', 676)]"
]
},
"execution_count": 90,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import string,random\n",
"from collections import Counter\n",
"s=string.ascii_lowercase+\" \"\n",
"s=\"abcd \"\n",
"monkey=''.join(random.choices(s, k=10000000))\n",
"monkey=[m for m in monkey.split(\" \") if m]\n",
"c=Counter(monkey)\n",
"common=c.most_common()[:10000]\n",
"fre=[value for (key,value) in common]\n",
"plt.plot(fre)\n",
"plt.xscale('log')\n",
"plt.yscale('log')\n",
"plt.show()\n",
"c.most_common(100)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"阶梯形状可能是由于概率相等"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 连接曲别针实验1\n",
"\n",
"取100个曲别针位置,随机在每个位置上连接新的曲别针,某个位置曲别针最多,新曲别针连接此位置的概率越高"
]
},
{
"cell_type": "code",
"execution_count": 116,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"l=100\n",
"list=np.ones(l)\n",
"for i in range(100000):\n",
" s=sum(list)\n",
" p=[j/s for j in list]\n",
" k=np.random.choice(l,1, p=p)\n",
" list[k]+=1"
]
},
{
"cell_type": "code",
"execution_count": 117,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\nnvooLPYAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x20a47caee80>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(sorted(list,reverse=True))\n",
"plt.xscale('log')\n",
"plt.yscale('log')\n",
"plt.show() #指数分布"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 连接曲别针实验2\n",
"\n",
"- 随机将两个串连接起来\n",
"- 串选中的概率与串中曲别针个数有关"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 方法1"
]
},
{
"cell_type": "code",
"execution_count": 85,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"21.244961769883503\n"
]
}
],
"source": [
"tic=timeit.default_timer()\n",
"l=20000\n",
"list=[1]*l\n",
"while len(list)>14000:\n",
" s=sum(list)\n",
" p=[j/s for j in list]\n",
" k1=np.random.choice(len(list),1, p=p)\n",
" a1=list.pop(k1[0])\n",
" s=sum(list)\n",
" p=[j/s for j in list]\n",
" k2=np.random.choice(len(list),1, p=p)\n",
" a2=list.pop(k2[0])\n",
" list.append(a1+a2)\n",
"toc=timeit.default_timer()\n",
"print(toc-tic)"
]
},
{
"cell_type": "code",
"execution_count": 86,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x2e75dbf8160>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# print(list)\n",
"plt.plot(sorted(list,reverse=True))\n",
"plt.xscale('log')\n",
"plt.yscale('log')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 方法2\n",
"\n",
"可能有一些不为人知的坑"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"19.68740146877235\n"
]
}
],
"source": [
"tic=timeit.default_timer()\n",
"l=20000\n",
"list=[1]*l\n",
"while len(list)>14000:\n",
" r=np.random.randint(l)\n",
" k1=len(list)-1\n",
"\n",
" for k,v in enumerate(list):\n",
" if r<=0:\n",
" k1=k-1\n",
" break\n",
" else:\n",
" r-=v\n",
" a1=list.pop(k1)\n",
" k2=len(list)-1\n",
" r=np.random.randint(l)\n",
" for k,v in enumerate(list):\n",
" if r<=0:\n",
" k2=k-1\n",
" break\n",
" else:\n",
" r-=v\n",
" a2=list.pop(k2)\n",
" list.append(a1+a2)\n",
"# print(len(list))\n",
"toc=timeit.default_timer()\n",
"print(toc-tic)"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\nRK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x2e75dabab00>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# print(list)\n",
"plt.plot(sorted(list,reverse=True))\n",
"plt.xscale('log')\n",
"plt.yscale('log')\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"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.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment