{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": true, "slideshow": { "slide_type": "slide" } }, "source": [ "\n", "# 第二章 数据科学的编程工具\n", "Python使用简介\n", "\n", "\n", "王成军\n", "\n", "![](./images/author.png)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 人生苦短,我用Python。\n", "\n", "Python(/ˈpaɪθən/)是一种面向对象、解释型计算机程序设计语言\n", "- 由Guido van Rossum于1989年底发明\n", "- 第一个公开发行版发行于1991年\n", "- Python语法简洁而清晰\n", "- 具有强大的标准库和丰富的第三方模块\n", "- 它常被昵称为胶水语言\n", "- TIOBE编程语言排行榜“2010年度编程语言”\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 特点\n", "- 免费、功能强大、使用者众多\n", "- 与R和MATLAB相比,Python是一门更易学、更严谨的程序设计语言。使用Python编写的脚本更易于理解和维护。\n", "- 如同其它编程语言一样,Python语言的基础知识包括:类型、列表(list)和元组(tuple)、字典(dictionary)、条件、循环、异常处理等。\n", "- 关于这些,初阶读者可以阅读《Beginning Python》一书(Hetland, 2005)。\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Python中包含了丰富的类库。\n", "众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV。\n", "Python本身的科学计算类库发展也十分完善,例如NumPy、SciPy和matplotlib等。\n", "就社会网络分析而言,igraph, networkx, graph-tool, Snap.py等类库提供了丰富的网络分析工具" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Python软件与IDE\n", "目前最新的Python版本为3.0,更稳定的2.7版本。\n", "编译器是编写程序的重要工具。\n", "免费的Python编译器有Spyder、PyCharm(免费社区版)、Ipython、Vim、 Emacs、 Eclipse(加上PyDev插件)。\n" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true, "slideshow": { "slide_type": "slide" } }, "source": [ "## Installing Anaconda Python\n", "- Use the Anaconda Python\n", " - http://anaconda.com/" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 第三方包可以使用pip install的方法安装。\n", "- 可以点击ToolsOpen command prompt\n", "- 然后在打开的命令窗口中输入:\n", " - pip install RISE \n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "> pip install RISE" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "- NumPy /SciPy for scientific computing\n", "- pandas to make Python usable for data analysis\n", "- matplotlib to make graphics\n", "- scikit-learn for machine learning\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T08:54:44.118071Z", "start_time": "2023-10-08T08:54:41.953567Z" }, "slideshow": { "slide_type": "slide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: flownetwork in /opt/anaconda3/lib/python3.9/site-packages (3.1.0)\n", "Requirement already satisfied: peppercorn in /opt/anaconda3/lib/python3.9/site-packages (from flownetwork) (0.6)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "pip install flownetwork" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T08:55:18.485724Z", "start_time": "2023-10-08T08:55:11.857830Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "$version = py3.0.1$\n" ] } ], "source": [ "from flownetwork import flownetwork as fn\n", "import networkx as nx\n", "import pylab as plt\n", "import numpy as np\n", "\n", "print(fn.__version__)\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T08:56:07.250059Z", "start_time": "2023-10-08T08:56:07.247377Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on function constructFlowNetwork in module flownetwork.flownetwork:\n", "\n", "constructFlowNetwork(C)\n", " C is an array of two dimentions, e.g., \n", " C = np.array([[user1, item1], \n", " [user1, item2], \n", " [user2, item1], \n", " [user2, item3]])\n", " Return a balanced flow network\n", "\n" ] } ], "source": [ "help(fn.constructFlowNetwork)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T08:56:16.025457Z", "start_time": "2023-10-08T08:56:16.022609Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "# constructing a flow network\n", "demo = fn.attention_data\n", "gd = fn.constructFlowNetwork(demo) " ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T08:56:33.928493Z", "start_time": "2023-10-08T08:56:33.566327Z" }, "code_folding": [ 0, 2 ], "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# drawing a demo network\n", "fig = plt.figure(figsize=(12, 8),facecolor='white')\n", "pos={0: np.array([ 0.2 , 0.8]),\n", " 2: np.array([ 0.2, 0.2]),\n", " 1: np.array([ 0.4, 0.6]),\n", " 6: np.array([ 0.4, 0.4]),\n", " 4: np.array([ 0.7, 0.8]),\n", " 5: np.array([ 0.7, 0.5]),\n", " 3: np.array([ 0.7, 0.2 ]),\n", " 'sink': np.array([ 1, 0.5]),\n", " 'source': np.array([ 0, 0.5])}\n", "\n", "width=[float(d['weight']*1.2) for (u,v,d) in gd.edges(data=True)]\n", "edge_labels=dict([((u,v,),d['weight']) for u,v,d in gd.edges(data=True)])\n", "\n", "nx.draw_networkx_edge_labels(gd,pos,edge_labels=edge_labels, font_size = 15, alpha = .5)\n", "nx.draw(gd, pos, node_size = 3000, node_color = 'orange',\n", " alpha = 0.2, width = width, edge_color='orange',style='solid')\n", "nx.draw_networkx_labels(gd,pos,font_size=18)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:05:14.099359Z", "start_time": "2021-10-11T07:05:14.085533Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "'DiGraph with 9 nodes and 15 edges'" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "nx.info(gd)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T03:29:21.862691Z", "start_time": "2021-05-14T03:29:21.857635Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "matrix([[0., 5., 1., 0., 2., 1., 0., 0., 0.],\n", " [0., 0., 0., 0., 1., 0., 0., 3., 1.],\n", " [0., 0., 0., 1., 0., 0., 0., 0., 0.],\n", " [0., 0., 0., 0., 0., 0., 0., 0., 0.],\n", " [0., 0., 0., 0., 0., 3., 0., 0., 0.],\n", " [0., 0., 0., 2., 0., 0., 2., 0., 0.],\n", " [0., 0., 0., 2., 0., 0., 0., 0., 0.],\n", " [0., 0., 0., 2., 0., 0., 0., 0., 1.],\n", " [0., 0., 0., 2., 0., 0., 0., 0., 0.]])" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# flow matrix\n", "m = fn.getFlowMatrix(gd)\n", "m" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T03:29:26.134764Z", "start_time": "2021-05-14T03:29:26.130022Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "defaultdict(.()>,\n", " {0: [0, 5, 5],\n", " 1: [0, 3, 2],\n", " 2: [2, 4, 1],\n", " 6: [1, 1, 1],\n", " 3: [2, 2, 0],\n", " 4: [2, 3, 0],\n", " 5: [2, 2, 0]})" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fn.networkDissipate(gd)\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2023-10-27T06:19:28.638581Z", "start_time": "2023-10-27T06:19:24.331623Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: iching in /opt/anaconda3/lib/python3.9/site-packages (3.7.2)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "pip install --upgrade iching" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2023-10-27T06:20:27.986395Z", "start_time": "2023-10-27T06:20:27.974810Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Your birthday & your prediction time: 200308030630202310271420\n", "there is a changing predict! Also run changePredict()\n", "困 & 兑 \n", " 本卦: 困卦原文困。亨,贞,大人吉,无咎。有言不信。象曰:泽无水,困。君子以致命遂志。白话文解释困卦:通泰。卜问王公贵族之事吉利,没有灾难。筮遇此爻,有罪之人无法申辩清楚。《象辞》说:本卦上卦为兑,兑为泽;下卦为坎,坎为水,水渗泽底,泽中干涸,是困卦的卦象。君子观此卦象,以处境艰难自励,穷且益坚,舍身捐命,以行其夙志。\n", "\n", "《断易天机》解困卦兑上坎下,为兑宫初世卦。此卦君子受困于小人,阳为阴蔽,大人则吉而无咎。所闻之言没有诚信。\n", "\n", "北宋易学家邵雍解泽上无水,受困穷之;万物不生,修德静守。得此卦者,陷入困境,事事不如意,宜坚守正道,等待时机。\n", "\n", "台湾国学大儒傅佩荣解时运:身名皆困,不如安命。财运:财乏势危,不如归去。家宅:安全第一;女寡之象。身体:肾水已亏,险在眼前。\n", "\n", "传统解卦这个卦是异卦(下坎上兑)相叠。兑为阴为泽喻悦;坎为阳为水喻险。泽水困,陷入困境,才智难以施展,仍坚守正道,自得其乐,必可成事,摆脱困境。大象:水在泽下,万物不生,喻君子困穷,小人滥盈之象。运势:诸事不如意,所谓龙游浅水遭虾戏。事业:境况十分不佳,遭受到很大的困难。人生面临巨大的考验,如采取不正当的手段,会愈陷愈深。相反,如身陷困逆境地而不失节操,自勉自坚,泰然处之,不失其志,终能成事。经商:面临激烈竞争,很有破产的可能。切勿失望,而应在困境中奋斗。为此,只能靠平日加强修养。认真反省自己的行为,总结教训,重新奋起,但也不宜浮躁,应缓慢而进。同时,更要警惕因致富发财,得意忘形而陷入新的困境。求名:欲速则不达。应以谦虚的态度,缓慢前进,应有坚定的志向,唯有志才能促成事业的成功。婚恋:以乐观态度冷静处理,尤应注重人品。决策:聪明智慧,但怀才不遇。若不因困境而失去信心,坚持努力上进,放弃侥幸心理,锲而不舍,虽不一定能守全实现自己的理想,但终会有所成。\n", "\n", "台湾张铭仁解卦困:表示很大的困难被困住了,主大凶象,四大难卦第四卦。四处无援,最困难之时。事事很难再有进展,只好静待时机,是此时最好的选择。解释:被困住。特性:不满足感,不喜平淡生活,生活过于理想化,爱变化。自立自强,辛勤工作,善于用脑工作,不适合领导工作。运势:不如意,被小人欺,劳而无功,破损之灾。一事难成,运衰也。宜守己待时。家运:家庭之主有屈于下风,被内助压迫者,亦常生反弹,吵架滋事。为黑暗时期,宜忍辱负重,期待黎明到来。若不谨守正道者,有失和、破​​兆也。疾病:危重之象,注意口腔咽喉,泌尿系统,甚至性病。胎孕:胎安。将来劳碌命格。子女:劳苦之命,但行为端正者,终可得福也。周转:求人不如求己,凡事需量入为出。若为女色破财,当然求助无门。买卖:不能如愿,有挫折。等人:受到阻碍,不来或迟到。寻人:途中可遇,来者自来也。失物:不能寻回。外出:困难多,慎重考虑。考试:不理想。诉讼:凡事不宜过于执着,防牢狱之灾。求事:不得时亦不得意,再待时机。改行:不宜。开业:开业者须再待时。\n", "\n", "初六爻辞初六。臀困于株木,入于幽谷,三岁不见。象曰:入于幽谷,幽不明也。白话文解释初六:臀部被狱吏的刑杖打伤,被投入黑暗的牢房中,三年不见其人。《象辞》说:进入了幽深的山谷,自然幽暗不明。\n", "\n", "北宋易学家邵雍解凶:得此爻者,有惊忧,或有丧服之灾。做官的会退职。\n", "\n", "台湾国学大儒傅佩荣解时运:渐入逆境,三年才转。财运:材木生意,运送不易。家宅:来往人少;男家卑微。身体:大凶之兆。\n", "\n", "初六变卦初六爻动变得周易第58卦:兑为泽。这个卦是同卦(下泽上泽)相叠。泽为水。两泽相连,两水交流,上下相和,团结一致,朋友相助,欢欣喜悦。兑为悦也。同秉刚健之德,外抱柔和之姿,坚行正道,导民向上。\n", "\n", "九二爻辞九二。困于洒食,朱绂方来,利用享祀。征凶,无咎。象曰:困于洒食,中有庆也。白话文解释九二:酒醉未醒,穿着红色服装的蛮夷前来进犯,忧患猝临,宜急祭神求佑。至于占问出征,则有危险。其他事无大的灾祸。《象辞》说:酒醉未醒,天予命赐公卿之服,因为九二之爻居下卦中位,这是将有喜庆之事的兆头。\n", "\n", "北宋易学家邵雍解平:得此爻者,得贵人提携,营谋获利,静吉动凶。做官的有晋升之机。\n", "\n", "台湾国学大儒傅佩荣解时运:有名有利,反为利用。财运:由商起家,往前则凶。家宅:富贵祭拜;婚姻即成。身体:饮食无度,收心祷告。\n", "\n", "九二变卦九二爻动变得周易第45卦:泽地萃。这个卦是异卦(下坤上兑)相叠。坤为地、为顺;兑为泽、为水。泽泛滥淹没大地,人众多相互斗争,危机必四伏,务必顺天任贤,未雨绸缪,柔顺而又和悦,彼此相得益彰,安居乐业。萃,聚集、团结。\n", "\n", "六三爻辞六三。困于石,据于疾藜。入于其宫,不见其妻,凶。象曰:据于疾藜,乘刚也;入于其宫,不见其妻,不祥也。白话文解释六三:被石头绊倒,被蒺藜刺伤,历难归家,妻子又不见了,这是凶险之兆。《象辞》说:被石头绊倒,被蒺藜刺伤,之所以屡遇艰难,因为六三阴爻居于九二阳爻之上,像弱者攀附于强暴之人,必受其挟持威凌。回到家中,妻子又不见了,这是不祥之兆。\n", "\n", "北宋易学家邵雍解凶:得此爻者,多难之时,宜守正谨慎。\n", "\n", "台湾国学大儒傅佩荣解时运:进退不得,身将不保。财运:财去命弱,下场堪虑。家宅:悼亡之屋。身体:无可救药。\n", "\n", "六三变卦六三爻动变得周易第28卦:泽风大过。这个卦是异卦(下巽上兑)相叠。兑为泽、为悦,巽为木、为顺,泽水淹舟,遂成大错。阴阳爻相反,阳大阴小,行动非常,有过度形象,内刚外柔。\n", "\n", "九四爻辞九四。来徐徐,困于金车,吝,有终。象曰:来徐徐,志在下也。虽不当位,有与也。白话文解释九四:其人被关押在囚车里,慢慢地走来。真不幸,但最后还是被释放。《象辞》说:行走缓慢,不求速进,志向卑微的表现。九四之爻居于九五之下,像人甘居下位,因为态度谦卑,倒能得人帮助。\n", "\n", "北宋易学家邵雍解凶:得此爻者,谋事虽然不利,但终有出险之时,从商者或周转不利。做官的闲职者会被起用。\n", "\n", "台湾国学大儒傅佩荣解时运:地位不当,受人所鄙。财运:货物失去,急救可保。家宅:慢些入住;事缓可成。身体:长期劳累,恐得归天。\n", "\n", "九四变卦九四爻动变得周易第29卦:坎为水。这个卦是同卦(下坎上坎)相叠。坎为水、为险,两坎相重,险上加险,险阻重重。一阳陷二阴。所幸阴虚阳实,诚信可豁然贯通。虽险难重重,却方能显人性光彩。\n", "\n", "九五爻辞九五。劓刖,困于赤绂。乃徐,有说,利用祭祀。象曰:劓刖,志未得也。乃徐有说,以中直也。利用祭祀,受福也。白话文解释九五:割了鼻子,断了腿,被身着红色服装的蛮夷虏去。后来慢慢找到脱身的机会,终于逃脱回家。宜急祭神酬谢。《象辞》说:割了鼻子,断了腿,是说其人不得志,身处险境。后来慢慢地脱离了险境,因为九五之爻居上卦中位,像人立身正直,自能化险为夷。宜祭祀鬼神,因为爻象指示:祈求鬼神保佑,承受其福荫。\n", "\n", "北宋易学家邵雍解凶:得此爻者,先难后易,不良者有诉刑之扰,丧服之忧。做官的先阻后顺。\n", "\n", "台湾国学大儒傅佩荣解时运:过刚必折,小心免祸。财运:货物清理,慢慢售出。家宅:鼻足之患;先疑后成。身体:头脚之病,调养祷告。\n", "\n", "九五变卦九五爻动变得周易第40卦:雷水解。这个卦是异卦(下坎上震)相叠。震为雷、为动;坎为水、为险。险在内,动在外。严冬天地闭塞,静极而动。万象更新,冬去春来,一切消除,是为解。\n", "\n", "上六爻辞上六。困于葛藟,于臲卼,曰动悔。有悔,征吉。象曰:困于葛藟,未当也。动悔有悔,吉行也。白话文解释上六:被葛藟绊倒,被小木桩刺伤,处境如此艰难,不宜有所行动,否则悔上加悔。至于占问出征则吉利。《象辞》说:被葛藟绊倒,因为行为不得当。悔悟到动则招悔,必能谦慎行事丽逢吉利。\n", "\n", "北宋易学家邵雍解平:得此爻者,防惊忧丧服,惟商人、旅行者利有攸往。做官的会有刑罚束缚之忧。\n", "\n", "台湾国学大儒傅佩荣解时运:厄运将终,收心努力。财运:久货可出,方可获利。家宅:修整旧宅;厘清瓜葛。身体:心神不安,迁地静养。\n", "\n", "上六变卦上六爻动变得周易第6卦:天水讼。这个卦是异卦(下坎上乾)相叠。同需卦相反,互为“综卦”。乾为刚健,坎为险陷。刚与险,健与险,彼此反对,定生争讼。争讼非善事,务必慎重戒惧。\n", "\n", " \n", " (O--__/\\__--O) \n", "(-------------(O---- |__|----O)----------------) \n", "(-----------(O-----/-|__|-\\------O)------------) \n", " (-------(O-/_--_\\-O)-------) \n", "\n", "\n", " 变卦: 兑卦原文兑。亨,利,贞。象曰:丽泽,兑。君子以朋友讲习。白话文解释兑卦:亨通。吉利的贞卜。《象辞》说:本卦为两兑相叠,兑为泽,两泽相连,两水交流是兑卦的卦象。君子观此卦象,从而广交朋友,讲习探索,推广见闻。\n", "\n", "《断易天机》解兑卦兑上兑下,为兑宫本位卦。兑为喜悦、取悦,又为泽,泽中之水可以滋润万物,所占的人会很吉利。\n", "\n", "北宋易学家邵雍解泽润万物,双重喜悦;和乐群伦,确守正道。得此卦者,多喜庆之事,人情和合,但应坚守正道,否则犯灾。\n", "\n", "台湾国学大儒傅佩荣解时运:朋友支持,好好珍惜。财运:有人扶助,获利不难。家宅:友朋同住;因友成亲。身体:熟医可治。\n", "\n", "传统解卦这个卦是同卦(下泽上泽)相叠。泽为水。两泽相连,两水交流,上下相和,团结一致,朋友相助,欢欣喜悦。兑为悦也。同秉刚健之德,外抱柔和之姿,坚行正道,导民向上。大象:两泽相依,更得泽中映月,美景良辰,令人怡悦。运势:悲喜交集,有誉有讥,守正道,诸事尚可称意。事业:由于善长人际关系,能团结他人,获得援助。因此,各项事业都十分顺利。只要本人坚持中正之道,动机纯正,是非分明,以诚心与人和悦,前途光明。经商:很有利,可以取得多种渠道的支持。但在顺利时切莫忘记谨慎小心的原则,尤其警惕上小人的当。求名:只要自己目的纯正,并有真才实学,一定可以受到多方面的热情帮助和资助,达到目的。婚恋:彼此满意,成功的可能性很大。但千万不要过于坚持己见。决策:为人聪颖,性格开朗,头脑灵活,心地善良,热心为公众服务,富有组织才能。因此,可以比较顺利地走上领导岗位。但一定要坚持中正原则,秉公办事,不得诌媚讨好上级,更不可欺压民众。永远保持谦虚品德,尤其不可过分自信,否则很容易为坏人包围。\n", "\n", "台湾张铭仁解卦泽:表示少女纯真喜悦之象,却在纯真之中带有娇蛮、任性的态度。六冲卦象,大好大坏。忧喜参半!解释:喜悦,高兴。特性:细心,体贴,善解人意,口才佳,幽默感,宜从事公关,服务业。运势:有喜亦有忧,有誉亦有讥,虽得吉庆如意,然应守持正道,否则犯灾。家运:有和悦之气象,但要操守自律,行事不可越轨,有分寸可得吉运。若不操守自律,必犯色情之害而受殃。疾病:久病则凶,注意生活检点,戒酒色。胎孕:孕安。能带给家人喜悦,又与六亲和睦,有缘。但也不要过分溺爱才是。子女:骨肉情深,和好幸福之象。周转:可顺利,不须急也。买卖:有反覆之象,然尽力必成,可得大利之交易。等人:会来,且有喜讯相告。寻人:很快可知其下落。向西方寻可得。失物:遗失物似为金属或金钱,有望失而复得,但是迟一点。且多数已损毁或损失。外出:一路平安,即使遇到困难也会有人帮助,解脱困境。考试:成绩佳。诉讼:似为两个女性及金钱之事惹起,宜有和事佬出面调解。求事:得利,但亦不可太大意。改行:吉利。开业:吉利。\n", "\n", "初九爻辞初九。和兑,吉。象曰:和兑之吉,行未疑也。白话文解释初九:和睦欢喜,吉利。《象辞》说:和睦欢喜之所以吉利,因为人际邦交无所猜疑。\n", "\n", "北宋易学家邵雍解吉:得此爻者,人情和合,百谋皆遂。\n", "\n", "台湾国学大儒傅佩荣解时运:以和为贵,诸事皆吉。财运:秋实可收,自然有利。家宅:和乐融融;室家得宜。身体:宽心无忧。\n", "\n", "初九变卦初九爻动变得周易第47卦:泽水困。这个卦是异卦(下坎上兑)相叠。兑为阴为泽喻悦;坎为阳为水喻险。泽水困,陷入困境,才智难以施展,仍坚守正道,自得其乐,必可成事,摆脱困境。\n", "\n", "九二爻辞九二。孚兑,吉,悔亡。象曰:孚兑之吉,信志也。白话文解释九二:优待俘虏,吉利,没有悔恨。《象辞》说:以诚信待人,人亦热忱待之,之所以吉利,因为互相之间有了信任。\n", "\n", "北宋易学家邵雍解吉:得此爻者,正当好运,事事和顺。做官的有升迁之兆。\n", "\n", "台湾国学大儒傅佩荣解时运:上下同心,自然吉祥。财运:以信为本,可长可远。家宅:与邻共富;阴阳相合。身体:疑病得解。\n", "\n", "九二变卦九二爻动变得周易第17卦:泽雷随。这个卦是异卦(下震上兑)相叠,震为雷,为动;兑为悦,动而悦就是“随”。随指相互顺从,己有随物,物能随己,彼此沟通。随必依时顺势,有原则和条件,以坚贞为前提。\n", "\n", "六三爻辞六三。来兑,凶。象曰:来兑之凶,位不当也白话文解释六三:以使人归服为乐,蕴藏着凶险。《象辞》说:以使人归服为乐,蕴藏着凶险,因为力小而任大,德薄而欲多,所行必不当。\n", "\n", "北宋易学家邵雍解凶:得此爻者,会有意外之祸,甚者则失道忘身。做官的有听信谗言而遭辱之忧。\n", "\n", "台湾国学大儒傅佩荣解时运:奔走营求,虽成亦辱。财运:无信之商,未来堪虑。家宅:去伪存诚;先合后离。身体:小心外祸。\n", "\n", "六三变卦六三爻动变得周易第43卦:泽天夬。这个卦是异卦(下乾上兑)相叠。乾为天为健;兑为泽为悦。泽气上升,决注成雨,雨施大地,滋润万物。五阳去一阴,去之不难,决(去之意)即可,故名为夬(guài),夬即决。\n", "\n", "九四爻辞九四。商兑,未宁,介疾有喜。象曰:九四之喜,有庆也。白话文解释九四:商谈恢复邦交之事,尚未达成协议,但两国的矛盾分歧有了愈合的趋势。《象辞》说:九四爻辞所讲的喜,即是指将有喜庆之事。\n", "\n", "北宋易学家邵雍解平:得此爻者,从商获利,或进人口,不良者或有疾病,谋望不成。做官的会身居要职,升迁有望。\n", "\n", "台湾国学大儒傅佩荣解时运:奋斗将成,斟酌行止。财运:忧心之事,商量解决。家宅:多疾不安;再三说媒而成。身体:心神不安,喜事舒怀。\n", "\n", "九四变卦九四爻动变得周易第60卦:水泽节。这个卦是异卦(下兑上坎)相叠。兑为泽,坎为水。泽有水而流有限,多必溢于泽外。因此要有节度,故称节。节卦与涣卦相反,互为综卦,交相使用。天地有节度才能常新,国家有节度才能安稳,个人有节度才能完美。\n", "\n", "九五爻辞九五。孚于剥,有厉。象曰:孚于剥,位正当也。白话文解释九五:被剥国俘虏。剥国无理挑衅,必遭惩罚(对我方而言,坏事将变为好事)。《象辞》说:当被侵剥之时,仍以诚信待人,正如九五阳爻所象,其人秉行中正之道,必能逢凶化吉。\n", "\n", "北宋易学家邵雍解凶:得此爻者,时运不佳,多意外之祸。做官的会受到小人的诽谤。\n", "\n", "台湾国学大儒傅佩荣解时运:居安思危,常得其昌。财运:虽有小损,信心仍在。家宅:诚信为上。身体:皮肤有疾,速治可愈。\n", "\n", "九五变卦九五爻动变得周易第54卦:雷泽归妹。这个卦是异卦(下兑上震)相叠。震为动、为长男;兑为悦、为少女。以少女从长男,产生爱慕之情,有婚姻之动,有嫁女之象,故称归妹。\n", "\n", "上六爻辞上六。引兑。象曰:上六引兑,未光也。白话文解释上六:引导大家和睦相处。《象辞》说:上六爻辞讲引导大家和睦相处,用意虽佳,但上六阴爻处一卦之尽头,像其人未必能一呼百应。\n", "\n", "北宋易学家邵雍解平:得此爻者,营谋不顺,谨防有忧。\n", "\n", "台湾国学大儒傅佩荣解时运:靠人扶持,平平之运。财运:有人指引,稍有小利。家宅:内忧外患;似非正聘。身体:化解内邪,才可保全。\n", "\n", "上六变卦上六爻动变得周易第10卦:天泽履。这个卦是异卦(下兑上乾)相叠,乾为天,兑为泽,以天喻君,以泽喻民,原文:“履(踩)虎尾,不咥(咬)人”。因此,结果吉利。君上民下,各得其位。兑柔遇乾刚,所履危。履意为实践,卦义是脚踏实地的向前进取的意思。\n", "\n", "\n" ] } ], "source": [ "import iching.iching as i\n", "\n", "i.predict(200308030630, 202310271420)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:11:51.471058Z", "start_time": "2023-10-08T09:11:51.467808Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "import random, datetime\n", "import numpy as np\n", "import pylab as plt # plot\n", "import matplotlib\n", "import statsmodels.api as sm\n", "from scipy.stats import norm\n", "from scipy.stats.stats import pearsonr\n", "#!pip install iching" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:12:47.914968Z", "start_time": "2023-10-08T09:12:47.901180Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "with open('./data/the_republic_plato_gutenberg_pg1497.txt', 'r') as f:\n", " lines = f.readlines()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:12:59.553975Z", "start_time": "2023-10-08T09:12:59.549899Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "24692" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(lines) " ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:13:03.407145Z", "start_time": "2023-10-08T09:13:03.403411Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "list" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(lines)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:15:15.485701Z", "start_time": "2023-10-08T09:15:15.480400Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "32\n" ] } ], "source": [ "book = lines[8524:]\n", "\n", "num = 0\n", "for i in book:\n", " if 'wrong' in i:\n", " num+=1\n", "print(num)\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Variable Type\n" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:17:19.690663Z", "start_time": "2023-10-08T09:17:19.686713Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "bool" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# str, int, float, bool\n", "type(False)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:15:43.981525Z", "start_time": "2021-10-11T07:15:43.977557Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "str" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type('Socrates')" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:17:52.235858Z", "start_time": "2023-10-08T09:17:52.232141Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "5" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# int\n", "int('5')" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:18:04.441318Z", "start_time": "2023-10-08T09:18:04.437657Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "7.1" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# float\n", "float(str(7.1))\n", "#str(7.1)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:18:58.929708Z", "start_time": "2023-10-08T09:18:58.926101Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "range(0, 10)" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "range(10) " ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:19:49.173439Z", "start_time": "2023-10-08T09:19:49.170599Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1\n", "2\n", "3\n", "4\n", "5\n", "6\n", "7\n", "8\n", "9\n", "10\n" ] } ], "source": [ "for i in range(1, 10+1):\n", " print(i)\n", "# range(1, 10)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## dir & help\n", "\n", "当你想要了解对象的详细信息时使用" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:21:12.541779Z", "start_time": "2023-10-08T09:21:12.536709Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "['__add__',\n", " '__class__',\n", " '__contains__',\n", " '__delattr__',\n", " '__dir__',\n", " '__doc__',\n", " '__eq__',\n", " '__format__',\n", " '__ge__',\n", " '__getattribute__',\n", " '__getitem__',\n", " '__getnewargs__',\n", " '__gt__',\n", " '__hash__',\n", " '__init__',\n", " '__init_subclass__',\n", " '__iter__',\n", " '__le__',\n", " '__len__',\n", " '__lt__',\n", " '__mod__',\n", " '__mul__',\n", " '__ne__',\n", " '__new__',\n", " '__reduce__',\n", " '__reduce_ex__',\n", " '__repr__',\n", " '__rmod__',\n", " '__rmul__',\n", " '__setattr__',\n", " '__sizeof__',\n", " '__str__',\n", " '__subclasshook__',\n", " 'capitalize',\n", " 'casefold',\n", " 'center',\n", " 'count',\n", " 'encode',\n", " 'endswith',\n", " 'expandtabs',\n", " 'find',\n", " 'format',\n", " 'format_map',\n", " 'index',\n", " 'isalnum',\n", " 'isalpha',\n", " 'isascii',\n", " 'isdecimal',\n", " 'isdigit',\n", " 'isidentifier',\n", " 'islower',\n", " 'isnumeric',\n", " 'isprintable',\n", " 'isspace',\n", " 'istitle',\n", " 'isupper',\n", " 'join',\n", " 'ljust',\n", " 'lower',\n", " 'lstrip',\n", " 'maketrans',\n", " 'partition',\n", " 'removeprefix',\n", " 'removesuffix',\n", " 'replace',\n", " 'rfind',\n", " 'rindex',\n", " 'rjust',\n", " 'rpartition',\n", " 'rsplit',\n", " 'rstrip',\n", " 'split',\n", " 'splitlines',\n", " 'startswith',\n", " 'strip',\n", " 'swapcase',\n", " 'title',\n", " 'translate',\n", " 'upper',\n", " 'zfill']" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#dir(str)[-10:]\n", "dir(str)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T06:11:55.262050Z", "start_time": "2021-05-14T06:11:55.235947Z" }, "scrolled": true, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on class str in module builtins:\n", "\n", "class str(object)\n", " | str(object='') -> str\n", " | str(bytes_or_buffer[, encoding[, errors]]) -> str\n", " | \n", " | Create a new string object from the given object. If encoding or\n", " | errors is specified, then the object must expose a data buffer\n", " | that will be decoded using the given encoding and error handler.\n", " | Otherwise, returns the result of object.__str__() (if defined)\n", " | or repr(object).\n", " | encoding defaults to sys.getdefaultencoding().\n", " | errors defaults to 'strict'.\n", " | \n", " | Methods defined here:\n", " | \n", " | __add__(self, value, /)\n", " | Return self+value.\n", " | \n", " | __contains__(self, key, /)\n", " | Return key in self.\n", " | \n", " | __eq__(self, value, /)\n", " | Return self==value.\n", " | \n", " | __format__(self, format_spec, /)\n", " | Return a formatted version of the string as described by format_spec.\n", " | \n", " | __ge__(self, value, /)\n", " | Return self>=value.\n", " | \n", " | __getattribute__(self, name, /)\n", " | Return getattr(self, name).\n", " | \n", " | __getitem__(self, key, /)\n", " | Return self[key].\n", " | \n", " | __getnewargs__(...)\n", " | \n", " | __gt__(self, value, /)\n", " | Return self>value.\n", " | \n", " | __hash__(self, /)\n", " | Return hash(self).\n", " | \n", " | __iter__(self, /)\n", " | Implement iter(self).\n", " | \n", " | __le__(self, value, /)\n", " | Return self<=value.\n", " | \n", " | __len__(self, /)\n", " | Return len(self).\n", " | \n", " | __lt__(self, value, /)\n", " | Return self int\n", " | \n", " | Return the number of non-overlapping occurrences of substring sub in\n", " | string S[start:end]. Optional arguments start and end are\n", " | interpreted as in slice notation.\n", " | \n", " | encode(self, /, encoding='utf-8', errors='strict')\n", " | Encode the string using the codec registered for encoding.\n", " | \n", " | encoding\n", " | The encoding in which to encode the string.\n", " | errors\n", " | The error handling scheme to use for encoding errors.\n", " | The default is 'strict' meaning that encoding errors raise a\n", " | UnicodeEncodeError. Other possible values are 'ignore', 'replace' and\n", " | 'xmlcharrefreplace' as well as any other name registered with\n", " | codecs.register_error that can handle UnicodeEncodeErrors.\n", " | \n", " | endswith(...)\n", " | S.endswith(suffix[, start[, end]]) -> bool\n", " | \n", " | Return True if S ends with the specified suffix, False otherwise.\n", " | With optional start, test S beginning at that position.\n", " | With optional end, stop comparing S at that position.\n", " | suffix can also be a tuple of strings to try.\n", " | \n", " | expandtabs(self, /, tabsize=8)\n", " | Return a copy where all tab characters are expanded using spaces.\n", " | \n", " | If tabsize is not given, a tab size of 8 characters is assumed.\n", " | \n", " | find(...)\n", " | S.find(sub[, start[, end]]) -> int\n", " | \n", " | Return the lowest index in S where substring sub is found,\n", " | such that sub is contained within S[start:end]. Optional\n", " | arguments start and end are interpreted as in slice notation.\n", " | \n", " | Return -1 on failure.\n", " | \n", " | format(...)\n", " | S.format(*args, **kwargs) -> str\n", " | \n", " | Return a formatted version of S, using substitutions from args and kwargs.\n", " | The substitutions are identified by braces ('{' and '}').\n", " | \n", " | format_map(...)\n", " | S.format_map(mapping) -> str\n", " | \n", " | Return a formatted version of S, using substitutions from mapping.\n", " | The substitutions are identified by braces ('{' and '}').\n", " | \n", " | index(...)\n", " | S.index(sub[, start[, end]]) -> int\n", " | \n", " | Return the lowest index in S where substring sub is found,\n", " | such that sub is contained within S[start:end]. Optional\n", " | arguments start and end are interpreted as in slice notation.\n", " | \n", " | Raises ValueError when the substring is not found.\n", " | \n", " | isalnum(self, /)\n", " | Return True if the string is an alpha-numeric string, False otherwise.\n", " | \n", " | A string is alpha-numeric if all characters in the string are alpha-numeric and\n", " | there is at least one character in the string.\n", " | \n", " | isalpha(self, /)\n", " | Return True if the string is an alphabetic string, False otherwise.\n", " | \n", " | A string is alphabetic if all characters in the string are alphabetic and there\n", " | is at least one character in the string.\n", " | \n", " | isascii(self, /)\n", " | Return True if all characters in the string are ASCII, False otherwise.\n", " | \n", " | ASCII characters have code points in the range U+0000-U+007F.\n", " | Empty string is ASCII too.\n", " | \n", " | isdecimal(self, /)\n", " | Return True if the string is a decimal string, False otherwise.\n", " | \n", " | A string is a decimal string if all characters in the string are decimal and\n", " | there is at least one character in the string.\n", " | \n", " | isdigit(self, /)\n", " | Return True if the string is a digit string, False otherwise.\n", " | \n", " | A string is a digit string if all characters in the string are digits and there\n", " | is at least one character in the string.\n", " | \n", " | isidentifier(self, /)\n", " | Return True if the string is a valid Python identifier, False otherwise.\n", " | \n", " | Call keyword.iskeyword(s) to test whether string s is a reserved identifier,\n", " | such as \"def\" or \"class\".\n", " | \n", " | islower(self, /)\n", " | Return True if the string is a lowercase string, False otherwise.\n", " | \n", " | A string is lowercase if all cased characters in the string are lowercase and\n", " | there is at least one cased character in the string.\n", " | \n", " | isnumeric(self, /)\n", " | Return True if the string is a numeric string, False otherwise.\n", " | \n", " | A string is numeric if all characters in the string are numeric and there is at\n", " | least one character in the string.\n", " | \n", " | isprintable(self, /)\n", " | Return True if the string is printable, False otherwise.\n", " | \n", " | A string is printable if all of its characters are considered printable in\n", " | repr() or if it is empty.\n", " | \n", " | isspace(self, /)\n", " | Return True if the string is a whitespace string, False otherwise.\n", " | \n", " | A string is whitespace if all characters in the string are whitespace and there\n", " | is at least one character in the string.\n", " | \n", " | istitle(self, /)\n", " | Return True if the string is a title-cased string, False otherwise.\n", " | \n", " | In a title-cased string, upper- and title-case characters may only\n", " | follow uncased characters and lowercase characters only cased ones.\n", " | \n", " | isupper(self, /)\n", " | Return True if the string is an uppercase string, False otherwise.\n", " | \n", " | A string is uppercase if all cased characters in the string are uppercase and\n", " | there is at least one cased character in the string.\n", " | \n", " | join(self, iterable, /)\n", " | Concatenate any number of strings.\n", " | \n", " | The string whose method is called is inserted in between each given string.\n", " | The result is returned as a new string.\n", " | \n", " | Example: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'\n", " | \n", " | ljust(self, width, fillchar=' ', /)\n", " | Return a left-justified string of length width.\n", " | \n", " | Padding is done using the specified fill character (default is a space).\n", " | \n", " | lower(self, /)\n", " | Return a copy of the string converted to lowercase.\n", " | \n", " | lstrip(self, chars=None, /)\n", " | Return a copy of the string with leading whitespace removed.\n", " | \n", " | If chars is given and not None, remove characters in chars instead.\n", " | \n", " | partition(self, sep, /)\n", " | Partition the string into three parts using the given separator.\n", " | \n", " | This will search for the separator in the string. If the separator is found,\n", " | returns a 3-tuple containing the part before the separator, the separator\n", " | itself, and the part after it.\n", " | \n", " | If the separator is not found, returns a 3-tuple containing the original string\n", " | and two empty strings.\n", " | \n", " | removeprefix(self, prefix, /)\n", " | Return a str with the given prefix string removed if present.\n", " | \n", " | If the string starts with the prefix string, return string[len(prefix):].\n", " | Otherwise, return a copy of the original string.\n", " | \n", " | removesuffix(self, suffix, /)\n", " | Return a str with the given suffix string removed if present.\n", " | \n", " | If the string ends with the suffix string and that suffix is not empty,\n", " | return string[:-len(suffix)]. Otherwise, return a copy of the original\n", " | string.\n", " | \n", " | replace(self, old, new, count=-1, /)\n", " | Return a copy with all occurrences of substring old replaced by new.\n", " | \n", " | count\n", " | Maximum number of occurrences to replace.\n", " | -1 (the default value) means replace all occurrences.\n", " | \n", " | If the optional argument count is given, only the first count occurrences are\n", " | replaced.\n", " | \n", " | rfind(...)\n", " | S.rfind(sub[, start[, end]]) -> int\n", " | \n", " | Return the highest index in S where substring sub is found,\n", " | such that sub is contained within S[start:end]. Optional\n", " | arguments start and end are interpreted as in slice notation.\n", " | \n", " | Return -1 on failure.\n", " | \n", " | rindex(...)\n", " | S.rindex(sub[, start[, end]]) -> int\n", " | \n", " | Return the highest index in S where substring sub is found,\n", " | such that sub is contained within S[start:end]. Optional\n", " | arguments start and end are interpreted as in slice notation.\n", " | \n", " | Raises ValueError when the substring is not found.\n", " | \n", " | rjust(self, width, fillchar=' ', /)\n", " | Return a right-justified string of length width.\n", " | \n", " | Padding is done using the specified fill character (default is a space).\n", " | \n", " | rpartition(self, sep, /)\n", " | Partition the string into three parts using the given separator.\n", " | \n", " | This will search for the separator in the string, starting at the end. If\n", " | the separator is found, returns a 3-tuple containing the part before the\n", " | separator, the separator itself, and the part after it.\n", " | \n", " | If the separator is not found, returns a 3-tuple containing two empty strings\n", " | and the original string.\n", " | \n", " | rsplit(self, /, sep=None, maxsplit=-1)\n", " | Return a list of the words in the string, using sep as the delimiter string.\n", " | \n", " | sep\n", " | The delimiter according which to split the string.\n", " | None (the default value) means split according to any whitespace,\n", " | and discard empty strings from the result.\n", " | maxsplit\n", " | Maximum number of splits to do.\n", " | -1 (the default value) means no limit.\n", " | \n", " | Splits are done starting at the end of the string and working to the front.\n", " | \n", " | rstrip(self, chars=None, /)\n", " | Return a copy of the string with trailing whitespace removed.\n", " | \n", " | If chars is given and not None, remove characters in chars instead.\n", " | \n", " | split(self, /, sep=None, maxsplit=-1)\n", " | Return a list of the words in the string, using sep as the delimiter string.\n", " | \n", " | sep\n", " | The delimiter according which to split the string.\n", " | None (the default value) means split according to any whitespace,\n", " | and discard empty strings from the result.\n", " | maxsplit\n", " | Maximum number of splits to do.\n", " | -1 (the default value) means no limit.\n", " | \n", " | splitlines(self, /, keepends=False)\n", " | Return a list of the lines in the string, breaking at line boundaries.\n", " | \n", " | Line breaks are not included in the resulting list unless keepends is given and\n", " | true.\n", " | \n", " | startswith(...)\n", " | S.startswith(prefix[, start[, end]]) -> bool\n", " | \n", " | Return True if S starts with the specified prefix, False otherwise.\n", " | With optional start, test S beginning at that position.\n", " | With optional end, stop comparing S at that position.\n", " | prefix can also be a tuple of strings to try.\n", " | \n", " | strip(self, chars=None, /)\n", " | Return a copy of the string with leading and trailing whitespace removed.\n", " | \n", " | If chars is given and not None, remove characters in chars instead.\n", " | \n", " | swapcase(self, /)\n", " | Convert uppercase characters to lowercase and lowercase characters to uppercase.\n", " | \n", " | title(self, /)\n", " | Return a version of the string where each word is titlecased.\n", " | \n", " | More specifically, words start with uppercased characters and all remaining\n", " | cased characters have lower case.\n", " | \n", " | translate(self, table, /)\n", " | Replace each character in the string using the given translation table.\n", " | \n", " | table\n", " | Translation table, which must be a mapping of Unicode ordinals to\n", " | Unicode ordinals, strings, or None.\n", " | \n", " | The table must implement lookup/indexing via __getitem__, for instance a\n", " | dictionary or list. If this operation raises LookupError, the character is\n", " | left untouched. Characters mapped to None are deleted.\n", " | \n", " | upper(self, /)\n", " | Return a copy of the string converted to uppercase.\n", " | \n", " | zfill(self, width, /)\n", " | Pad a numeric string with zeros on the left, to fill a field of the given width.\n", " | \n", " | The string is never truncated.\n", " | \n", " | ----------------------------------------------------------------------\n", " | Static methods defined here:\n", " | \n", " | __new__(*args, **kwargs) from builtins.type\n", " | Create and return a new object. See help(type) for accurate signature.\n", " | \n", " | maketrans(...)\n", " | Return a translation table usable for str.translate().\n", " | \n", " | If there is only one argument, it must be a dictionary mapping Unicode\n", " | ordinals (integers) or characters to Unicode ordinals, strings or None.\n", " | Character keys will be then converted to ordinals.\n", " | If there are two arguments, they must be strings of equal length, and\n", " | in the resulting dictionary, each character in x will be mapped to the\n", " | character at the same position in y. If there is a third argument, it\n", " | must be a string, whose characters will be mapped to None in the result.\n", "\n" ] } ], "source": [ "help(str)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:23:01.675877Z", "start_time": "2023-10-08T09:23:01.671476Z" } }, "outputs": [ { "data": { "text/plain": [ "'cheng jun is a big fan of Socrates!'" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "'cheng jun'.__add__(' is a big fan of Socrates!')" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:21:27.926496Z", "start_time": "2021-10-11T07:21:27.924008Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "#dir(str)[-10:]" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T03:55:38.921530Z", "start_time": "2021-05-14T03:55:38.917817Z" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "' '.isspace()" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T03:53:49.045706Z", "start_time": "2021-05-14T03:53:49.042142Z" } }, "outputs": [ { "data": { "text/plain": [ "'socrates the king is the greatest.'" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "'socrates the king'.__add__(' is the greatest.')" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:23:59.361508Z", "start_time": "2023-10-08T09:23:59.357406Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "['rstrip',\n", " 'split',\n", " 'splitlines',\n", " 'startswith',\n", " 'strip',\n", " 'swapcase',\n", " 'title',\n", " 'translate',\n", " 'upper',\n", " 'zfill']" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x = ' Hello WorlD '\n", "dir(x)[-10:] " ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:24:09.288479Z", "start_time": "2023-10-08T09:24:09.284990Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "' hello world '" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# lower\n", "x.lower() " ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:24:18.985029Z", "start_time": "2023-10-08T09:24:18.980998Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "' HELLO WORLD '" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# upper\n", "x.upper()" ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:24:58.490156Z", "start_time": "2023-10-08T09:24:58.486766Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "' Hello WorlD'" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# rstrip\n", "x.rstrip()" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:25:02.013997Z", "start_time": "2023-10-08T09:25:02.009904Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "'Hello WorlD'" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# strip\n", "x.strip()" ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:25:57.839900Z", "start_time": "2023-10-08T09:25:57.835585Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "' Hell WorlD '" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# replace\n", "x.replace('lo', 'l')" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:26:24.261618Z", "start_time": "2023-10-08T09:26:24.257934Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "[' Hel', ' WorlD ']" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# split\n", "# x.lower().strip().split(' ')\n", "x.split('lo')" ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:27:19.942813Z", "start_time": "2023-10-08T09:27:19.939405Z" } }, "outputs": [ { "data": { "text/plain": [ "'a - 1'" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# join \n", "' - '.join(['a', '1'])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## type\n", "当你想要了解变量类型时使用type" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:28:02.002856Z", "start_time": "2023-10-08T09:28:01.999134Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "str" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x = 'hello world'\n", "type(x)\n", "#help(type(x))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Data Structure\n", "list, tuple, set, dictionary, array\n" ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:31:17.728550Z", "start_time": "2023-10-08T09:31:17.724031Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1, 2, 3, 3] (1, 2, 3, 3) {1, 2, 3} {'a': 1, 'b': 2, 'c': 3} [1 2 3 3]\n" ] } ], "source": [ "l = [1,2,3,3] # list\n", "t = (1, 2, 3, 3) # tuple\n", "s = {1, 2, 3, 3} # set([1,2,3,3]) # set\n", "d = {'a':1,'b':2,'c':3} # dict\n", "a = np.array(l) # array\n", "print(l, t, s, d, a)\n" ] }, { "cell_type": "code", "execution_count": 61, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:32:51.565538Z", "start_time": "2023-10-08T09:32:51.561601Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "[1, 2, 3, 3, 4]" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l = [1,2,3,3] # list\n", "l.append(4)\n", "l\n", "#help(list)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:35:22.167369Z", "start_time": "2023-10-08T09:35:22.163331Z" }, "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "text/plain": [ "dict_keys(['a', 'b', 'c'])" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "d = {'a':1,'b':2,'c':3} # dict\n", "d.keys()\n", "#help(dict)" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:35:29.361343Z", "start_time": "2023-10-08T09:35:29.357425Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "dict_values([1, 2, 3])" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "d = {'a':1,'b':2,'c':3} # dict\n", "d.values()" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:35:43.913710Z", "start_time": "2023-10-08T09:35:43.909903Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "1" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "d = {3:1,'b':3,'c':1} # dict\n", "d['c']" ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "ExecuteTime": { "end_time": "2020-09-22T01:32:27.607384Z", "start_time": "2020-09-22T01:32:27.603091Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "dict_items([('a', 1), ('b', 2), ('c', 3)])" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "d = {'a':1,'b':2,'c':3} # dict\n", "d.items() " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 定义函数" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:39:59.278529Z", "start_time": "2023-10-08T09:39:59.275896Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "def devidePlus(m, n): # 结尾是冒号\n", " y = m/n + 1 # 注意:空格\n", " return y # 注意:return" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## For 循环" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:40:20.114390Z", "start_time": "2023-10-08T09:40:20.110910Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "range(0, 10)" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "range(10)" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:44:33.929631Z", "start_time": "2021-10-11T07:44:33.923987Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "range(1, 10)" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "range(1, 10) " ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:40:37.430778Z", "start_time": "2023-10-08T09:40:37.426967Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 0 0\n", "1 10 1\n", "2 20 4\n", "3 30 9\n", "4 40 16\n", "5 50 25\n", "6 60 36\n", "7 70 49\n", "8 80 64\n", "9 90 81\n" ] } ], "source": [ "for i in range(10):\n", " print(i, i*10, i**2)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:45:20.900095Z", "start_time": "2021-10-11T07:45:20.890918Z" }, "code_folding": [], "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "# for i in range(10):\n", "# print(i*10) " ] }, { "cell_type": "code", "execution_count": 72, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:41:15.223210Z", "start_time": "2023-10-08T09:41:15.219942Z" }, "scrolled": true, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.0\n", "1.5\n", "2.0\n", "2.5\n", "3.0\n", "3.5\n", "4.0\n", "4.5\n", "5.0\n", "5.5\n" ] } ], "source": [ "for i in range(10):\n", " print(devidePlus(i, 2))" ] }, { "cell_type": "code", "execution_count": 73, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:42:08.289391Z", "start_time": "2023-10-08T09:42:08.285193Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "[1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 5.5]" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 列表内部的for循环(列表推演)\n", "r = [devidePlus(i, 2) for i in range(10)]\n", "r " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## map函数" ] }, { "cell_type": "code", "execution_count": 76, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:43:59.644911Z", "start_time": "2023-10-08T09:43:59.641550Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "32.0 72.5 104.0 212.0\n" ] } ], "source": [ "def fahrenheit(T):\n", " return (9/5)*T + 32\n", "\n", "temp = [0, 22.5, 40,100]\n", "\n", "#[fahrenheit(i) for i in temp]\n", "F_temps = map(fahrenheit, temp)\n", "print(*F_temps)\n", "#[i for i in F_temps]" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:49:15.341189Z", "start_time": "2021-10-11T07:49:15.325415Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3.0 4.0 1.4\n" ] } ], "source": [ "m1 = map(devidePlus, [4,3,2], [2, 1, 5])\n", "print(*m1)\n", "#print(*map(devidePlus, [4,3,2], [2, 1, 5]))\n", "# 注意: 将(4, 2)作为一个组合进行计算,将(3, 1)作为一个组合进行计算" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T07:50:03.287007Z", "start_time": "2021-10-11T07:50:03.276796Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3 7 11 15 19\n" ] } ], "source": [ "m2 = map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])\n", "print(*m2)" ] }, { "cell_type": "code", "execution_count": 78, "metadata": { "ExecuteTime": { "end_time": "2020-09-22T01:41:22.820936Z", "start_time": "2020-09-22T01:41:22.816574Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 4 9 13 14\n" ] } ], "source": [ "m3 = map(lambda x, y, z: x + y - z, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10], [3, 3, 2, 2, 5])\n", "print(*m3)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## if elif else" ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:45:45.753033Z", "start_time": "2023-10-08T09:45:45.749809Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "余数既不是1也不是0\n" ] } ], "source": [ "j = 5.5\n", "if j%2 == 1:\n", " print(r'余数是1')\n", "elif j%2 ==0:\n", " print(r'余数是0')\n", "else:\n", " print(r'余数既不是1也不是0')" ] }, { "cell_type": "code", "execution_count": 78, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:46:45.061175Z", "start_time": "2023-10-08T09:46:45.057923Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5 0 10\n" ] } ], "source": [ "x = 5\n", "if x < 5:\n", " y = -1\n", " z = 5\n", "elif x > 5:\n", " y = 1\n", " z = 11\n", "else:\n", " y = 0\n", " z = 10\n", "print(x, y, z)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## while循环" ] }, { "cell_type": "code", "execution_count": 79, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:48:47.864357Z", "start_time": "2023-10-08T09:48:47.860282Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\n", "1\n", "2\n", "3\n", "4\n", "5\n", "6\n", "7\n", "8\n", "9\n" ] } ], "source": [ "j = 0\n", "while j <10:\n", " print(j)\n", " j+=1 # avoid dead loop\n", " " ] }, { "cell_type": "code", "execution_count": 80, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:49:09.446697Z", "start_time": "2023-10-08T09:49:09.443087Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1\n", "9\n", "25\n", "49\n", "81\n" ] } ], "source": [ "j = 0\n", "while j <10:\n", " if j%2 != 0: \n", " print(j**2)\n", " j+=1 # avoid dead loop " ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:49:22.280655Z", "start_time": "2023-10-08T09:49:22.276712Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1\n", "9\n", "25\n", "49\n", "81\n", "121\n", "169\n", "225\n", "289\n", "361\n", "441\n", "529\n", "625\n", "729\n", "841\n" ] } ], "source": [ "j = 0\n", "while j <50:\n", " if j == 30:\n", " break\n", " if j%2 != 0: \n", " print(j**2)\n", " j+=1 # avoid dead loop\n", " " ] }, { "cell_type": "code", "execution_count": 85, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:50:42.993232Z", "start_time": "2023-10-08T09:50:42.990369Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4\n", "3\n", "2\n" ] } ], "source": [ "a = 4\n", "while a: # 0, None, False\n", " print(a) \n", " a -= 1\n", " if a < 2:\n", " a = {} # {}#[]#''#False #0 #None # []" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## try except " ] }, { "cell_type": "code", "execution_count": 87, "metadata": { "ExecuteTime": { "end_time": "2023-10-08T09:52:59.818479Z", "start_time": "2023-10-08T09:52:59.811428Z" }, "code_folding": [], "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3.0\n", "1.8\n" ] }, { "data": { "text/plain": [ "[[1, 0, ZeroDivisionError('division by zero')]]" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def devidePlus(m, n): # 结尾是冒号\n", " return m/n+ 1 # 注意:空格\n", "error = []\n", "for k, i in enumerate([2, 0, 5]):\n", "# print(devidePlus(4, i)) \n", " try:\n", " print(devidePlus(4, i))\n", " except Exception as e:\n", " #print(i, e)\n", " error.append([k, i, e])\n", " pass\n", "error" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:29:20.936465Z", "start_time": "2021-10-11T08:29:20.930314Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "10.0\n", "10.0\n", "[0, 0, 1] 0 division by zero\n" ] } ], "source": [ "alist = [[1,1], [0, 0, 1]]\n", "for i in alist:\n", " try:\n", " for j in i:\n", " print(10 / j)\n", " except Exception as e:\n", " print(i, j, e)\n", " pass" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:29:41.082819Z", "start_time": "2021-10-11T08:29:41.072815Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "10.0\n", "10.0\n", "0 division by zero\n", "0 division by zero\n", "10.0\n" ] } ], "source": [ "alist = [[1,1], [0, 0, 1]]\n", "for i in alist:\n", " for j in i:\n", " try:\n", " print(10 / j)\n", " except Exception as e:\n", " print(j, e)\n", " pass" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Write and Read data" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:32:13.033454Z", "start_time": "2021-10-11T08:32:13.002901Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "[[0, 0, 0],\n", " [1, 1, 1],\n", " [2, 4, 8],\n", " [3, 9, 27],\n", " [4, 16, 64],\n", " [5, 25, 125],\n", " [6, 36, 216],\n", " [7, 49, 343],\n", " [8, 64, 512],\n", " [9, 81, 729]]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data =[[i, i**2, i**3] for i in range(10)] \n", "data" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:33:17.684527Z", "start_time": "2021-10-11T08:33:17.673861Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\t0\t0\n", "1\t1\t1\n", "2\t4\t8\n", "3\t9\t27\n", "4\t16\t64\n", "5\t25\t125\n", "6\t36\t216\n", "7\t49\t343\n", "8\t64\t512\n", "9\t81\t729\n" ] } ], "source": [ "for i in data:\n", " print('\\t'.join([str(j) for j in i]))\n", " #print('\\t'.join(map(str, i))) " ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:33:32.294118Z", "start_time": "2021-10-11T08:33:32.289809Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "list" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(data)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:33:34.533959Z", "start_time": "2021-10-11T08:33:34.529689Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "10" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(data)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:33:36.498179Z", "start_time": "2021-10-11T08:33:36.489166Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "[0, 0, 0]" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data[0]" ] }, { "cell_type": "code", "execution_count": 87, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T06:45:53.790335Z", "start_time": "2021-05-14T06:45:53.786988Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on built-in function write:\n", "\n", "write(text, /) method of _io.TextIOWrapper instance\n", " Write string to stream.\n", " Returns the number of characters written (which is always equal to\n", " the length of the string).\n", "\n" ] } ], "source": [ "help(f.write) " ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T06:47:52.384851Z", "start_time": "2021-05-14T06:47:52.359107Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "# 保存数据\n", "data =[[i, i**2, i**3] for i in range(10000)] \n", "\n", "f = open(\"data/data_write_to_file2023.txt\", \"w\")\n", "for i in data:\n", " f.write('\\t'.join([str(j) for j in i]) + '\\n')\n", "f.close() \n" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T06:58:58.363840Z", "start_time": "2021-05-14T06:58:58.357336Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "['0\\t0\\t0\\n', '1\\t1\\t1\\n', '2\\t4\\t8\\n', '3\\t9\\t27\\n', '4\\t16\\t64\\n']" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "with open('data/data_write_to_file2023.txt','r') as f:\n", " data = f.readlines()\n", "data[:5]\n", "# print(data[0])" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:37:10.250695Z", "start_time": "2021-10-11T08:37:10.240232Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "77" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "with open('./data/data_write_to_file1.txt','r') as f:\n", " data = f.readlines(1000) #bytes 字节\n", "len(data) " ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:37:39.403613Z", "start_time": "2021-10-11T08:37:39.388782Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\t0\t0\n", "\n" ] } ], "source": [ "with open('./data/data_write_to_file1.txt','r') as f:\n", " print(f.readline())" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:38:03.391379Z", "start_time": "2021-10-11T08:38:03.384342Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 0\t0\t0\n", "\n", "1000 1000\t1000000\t1000000000\n", "\n", "2000 2000\t4000000\t8000000000\n", "\n", "3000 3000\t9000000\t27000000000\n", "\n", "4000 4000\t16000000\t64000000000\n", "\n", "5000 5000\t25000000\t125000000000\n", "\n", "6000 6000\t36000000\t216000000000\n", "\n", "7000 7000\t49000000\t343000000000\n", "\n", "8000 8000\t64000000\t512000000000\n", "\n", "9000 9000\t81000000\t729000000000\n", "\n" ] } ], "source": [ "# f = [7, 2, 10, 4, 5]\n", "\n", "# for k,i in enumerate(f):\n", "# print(k,i)\n", "\n", "with open('data/data_write_to_file1.txt', 'r') as f: \n", " for k, i in enumerate(f):\n", " if k%1000==0:\n", " print(k, i)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:40:43.014698Z", "start_time": "2021-10-11T08:40:32.941508Z" }, "scrolled": true, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0000\n" ] } ], "source": [ "#from time import sleep\n", "from tqdm import tqdm\n", "from time import sleep\n", "\n", "total = 0\n", "with open('./data/data_write_to_file1.txt','r') as f:\n", " for i in tqdm(f):\n", " sleep(0.001)\n", " total+=1\n", "# for k, i in enumerate(f):\n", "# if k % 1000 ==0:\n", "# sleep(1)\n", "# print(k, end = '\\r')\n", "print(total)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:21:43.923393Z", "start_time": "2019-06-07T08:21:43.912523Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\t0\t0\n", "\n", "2000\t4000000\t8000000000\n", "\n", "4000\t16000000\t64000000000\n", "\n", "6000\t36000000\t216000000000\n", "\n", "8000\t64000000\t512000000000\n", "\n" ] } ], "source": [ "with open('./data/data_write_to_file.txt','r') as f:\n", " for k, i in enumerate(f):\n", " if k%2000 == 0:\n", " print(i)" ] }, { "cell_type": "code", "execution_count": 93, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:43:39.906095Z", "start_time": "2021-10-11T08:43:39.895309Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "[[0, 0, 0]]" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data = []\n", "line = '0\\t0\\t0\\n'\n", "line = line.replace('\\n', '')\n", "line = line.split('\\t')\n", "line = [int(i) for i in line] # convert str to int\n", "data.append(line) \n", "data" ] }, { "cell_type": "code", "execution_count": 94, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:44:52.632391Z", "start_time": "2021-10-11T08:44:52.569161Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "[[9995, 99900025, 998500749875],\n", " [9996, 99920016, 998800479936],\n", " [9997, 99940009, 999100269973],\n", " [9998, 99960004, 999400119992],\n", " [9999, 99980001, 999700029999]]" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 读取数据\n", "data = []\n", "with open('./data/data_write_to_file1.txt','r') as f:\n", " for line in f:\n", " line = line.replace('\\n', '').split('\\t')\n", " line = [int(i) for i in line]\n", " data.append(line)\n", "#len(data)\n", "data[-5:]" ] }, { "cell_type": "code", "execution_count": 98, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:45:13.560049Z", "start_time": "2021-10-11T08:45:13.490087Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "10000" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 读取数据\n", "data = []\n", "with open('./data/data_write_to_file.txt','r') as f:\n", " for line in f:\n", " line = line.replace('\\n', '').split('\\t')\n", " line = [int(i) for i in line]\n", " data.append(line)\n", "len(data)\n" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:46:16.759923Z", "start_time": "2021-10-11T08:46:16.744863Z" }, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "import pandas as pd" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:18:54.212496", "start_time": "2017-05-11T22:18:54.207441" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on function read_csv in module pandas.io.parsers:\n", "\n", "read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, skipfooter=None, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, iterator=False, chunksize=None, compression='infer', thousands=None, decimal='.', lineterminator=None, quotechar='\"', quoting=0, escapechar=None, comment=None, encoding=None, dialect=None, tupleize_cols=False, error_bad_lines=True, warn_bad_lines=True, skip_footer=0, doublequote=True, delim_whitespace=False, as_recarray=False, compact_ints=False, use_unsigned=False, low_memory=True, buffer_lines=None, memory_map=False, float_precision=None)\n", " Read CSV (comma-separated) file into DataFrame\n", " \n", " Also supports optionally iterating or breaking of the file\n", " into chunks.\n", " \n", " Additional help can be found in the `online docs for IO Tools\n", " `_.\n", " \n", " Parameters\n", " ----------\n", " filepath_or_buffer : str, pathlib.Path, py._path.local.LocalPath or any object with a read() method (such as a file handle or StringIO)\n", " The string could be a URL. Valid URL schemes include http, ftp, s3, and\n", " file. For file URLs, a host is expected. For instance, a local file could\n", " be file ://localhost/path/to/table.csv\n", " sep : str, default ','\n", " Delimiter to use. If sep is None, will try to automatically determine\n", " this. Regular expressions are accepted and will force use of the python\n", " parsing engine and will ignore quotes in the data.\n", " delimiter : str, default None\n", " Alternative argument name for sep.\n", " header : int or list of ints, default 'infer'\n", " Row number(s) to use as the column names, and the start of the data.\n", " Default behavior is as if set to 0 if no ``names`` passed, otherwise\n", " ``None``. Explicitly pass ``header=0`` to be able to replace existing\n", " names. The header can be a list of integers that specify row locations for\n", " a multi-index on the columns e.g. [0,1,3]. Intervening rows that are not\n", " specified will be skipped (e.g. 2 in this example is skipped). Note that\n", " this parameter ignores commented lines and empty lines if\n", " ``skip_blank_lines=True``, so header=0 denotes the first line of data\n", " rather than the first line of the file.\n", " names : array-like, default None\n", " List of column names to use. If file contains no header row, then you\n", " should explicitly pass header=None\n", " index_col : int or sequence or False, default None\n", " Column to use as the row labels of the DataFrame. If a sequence is given, a\n", " MultiIndex is used. If you have a malformed file with delimiters at the end\n", " of each line, you might consider index_col=False to force pandas to _not_\n", " use the first column as the index (row names)\n", " usecols : array-like, default None\n", " Return a subset of the columns.\n", " Results in much faster parsing time and lower memory usage.\n", " squeeze : boolean, default False\n", " If the parsed data only contains one column then return a Series\n", " prefix : str, default None\n", " Prefix to add to column numbers when no header, e.g. 'X' for X0, X1, ...\n", " mangle_dupe_cols : boolean, default True\n", " Duplicate columns will be specified as 'X.0'...'X.N', rather than 'X'...'X'\n", " dtype : Type name or dict of column -> type, default None\n", " Data type for data or columns. E.g. {'a': np.float64, 'b': np.int32}\n", " (Unsupported with engine='python'). Use `str` or `object` to preserve and\n", " not interpret dtype.\n", " engine : {'c', 'python'}, optional\n", " Parser engine to use. The C engine is faster while the python engine is\n", " currently more feature-complete.\n", " converters : dict, default None\n", " Dict of functions for converting values in certain columns. Keys can either\n", " be integers or column labels\n", " true_values : list, default None\n", " Values to consider as True\n", " false_values : list, default None\n", " Values to consider as False\n", " skipinitialspace : boolean, default False\n", " Skip spaces after delimiter.\n", " skiprows : list-like or integer, default None\n", " Line numbers to skip (0-indexed) or number of lines to skip (int)\n", " at the start of the file\n", " skipfooter : int, default 0\n", " Number of lines at bottom of file to skip (Unsupported with engine='c')\n", " nrows : int, default None\n", " Number of rows of file to read. Useful for reading pieces of large files\n", " na_values : str or list-like or dict, default None\n", " Additional strings to recognize as NA/NaN. If dict passed, specific\n", " per-column NA values. By default the following values are interpreted as\n", " NaN: `''`, `'#N/A'`, `'#N/A N/A'`, `'#NA'`, `'-1.#IND'`, `'-1.#QNAN'`, `'-NaN'`, `'-nan'`, `'1.#IND'`, `'1.#QNAN'`, `'N/A'`, `'NA'`, `'NULL'`, `'NaN'`, `'nan'`.\n", " keep_default_na : bool, default True\n", " If na_values are specified and keep_default_na is False the default NaN\n", " values are overridden, otherwise they're appended to.\n", " na_filter : boolean, default True\n", " Detect missing value markers (empty strings and the value of na_values). In\n", " data without any NAs, passing na_filter=False can improve the performance\n", " of reading a large file\n", " verbose : boolean, default False\n", " Indicate number of NA values placed in non-numeric columns\n", " skip_blank_lines : boolean, default True\n", " If True, skip over blank lines rather than interpreting as NaN values\n", " parse_dates : boolean or list of ints or names or list of lists or dict, default False\n", " \n", " * boolean. If True -> try parsing the index.\n", " * list of ints or names. e.g. If [1, 2, 3] -> try parsing columns 1, 2, 3\n", " each as a separate date column.\n", " * list of lists. e.g. If [[1, 3]] -> combine columns 1 and 3 and parse as\n", " a single date column.\n", " * dict, e.g. {'foo' : [1, 3]} -> parse columns 1, 3 as date and call result\n", " 'foo'\n", " \n", " Note: A fast-path exists for iso8601-formatted dates.\n", " infer_datetime_format : boolean, default False\n", " If True and parse_dates is enabled for a column, attempt to infer\n", " the datetime format to speed up the processing\n", " keep_date_col : boolean, default False\n", " If True and parse_dates specifies combining multiple columns then\n", " keep the original columns.\n", " date_parser : function, default None\n", " Function to use for converting a sequence of string columns to an array of\n", " datetime instances. The default uses ``dateutil.parser.parser`` to do the\n", " conversion. Pandas will try to call date_parser in three different ways,\n", " advancing to the next if an exception occurs: 1) Pass one or more arrays\n", " (as defined by parse_dates) as arguments; 2) concatenate (row-wise) the\n", " string values from the columns defined by parse_dates into a single array\n", " and pass that; and 3) call date_parser once for each row using one or more\n", " strings (corresponding to the columns defined by parse_dates) as arguments.\n", " dayfirst : boolean, default False\n", " DD/MM format dates, international and European format\n", " iterator : boolean, default False\n", " Return TextFileReader object for iteration or getting chunks with\n", " ``get_chunk()``.\n", " chunksize : int, default None\n", " Return TextFileReader object for iteration. `See IO Tools docs for more\n", " information\n", " `_ on\n", " ``iterator`` and ``chunksize``.\n", " compression : {'infer', 'gzip', 'bz2', None}, default 'infer'\n", " For on-the-fly decompression of on-disk data. If 'infer', then use gzip or\n", " bz2 if filepath_or_buffer is a string ending in '.gz' or '.bz2',\n", " respectively, and no decompression otherwise. Set to None for no\n", " decompression.\n", " thousands : str, default None\n", " Thousands separator\n", " decimal : str, default '.'\n", " Character to recognize as decimal point (e.g. use ',' for European data).\n", " lineterminator : str (length 1), default None\n", " Character to break file into lines. Only valid with C parser.\n", " quotechar : str (length 1), optional\n", " The character used to denote the start and end of a quoted item. Quoted\n", " items can include the delimiter and it will be ignored.\n", " quoting : int or csv.QUOTE_* instance, default None\n", " Control field quoting behavior per ``csv.QUOTE_*`` constants. Use one of\n", " QUOTE_MINIMAL (0), QUOTE_ALL (1), QUOTE_NONNUMERIC (2) or QUOTE_NONE (3).\n", " Default (None) results in QUOTE_MINIMAL behavior.\n", " escapechar : str (length 1), default None\n", " One-character string used to escape delimiter when quoting is QUOTE_NONE.\n", " comment : str, default None\n", " Indicates remainder of line should not be parsed. If found at the beginning\n", " of a line, the line will be ignored altogether. This parameter must be a\n", " single character. Like empty lines (as long as ``skip_blank_lines=True``),\n", " fully commented lines are ignored by the parameter `header` but not by\n", " `skiprows`. For example, if comment='#', parsing '#empty\\na,b,c\\n1,2,3'\n", " with `header=0` will result in 'a,b,c' being\n", " treated as the header.\n", " encoding : str, default None\n", " Encoding to use for UTF when reading/writing (ex. 'utf-8'). `List of Python\n", " standard encodings\n", " `_\n", " dialect : str or csv.Dialect instance, default None\n", " If None defaults to Excel dialect. Ignored if sep longer than 1 char\n", " See csv.Dialect documentation for more details\n", " tupleize_cols : boolean, default False\n", " Leave a list of tuples on columns as is (default is to convert to\n", " a Multi Index on the columns)\n", " error_bad_lines : boolean, default True\n", " Lines with too many fields (e.g. a csv line with too many commas) will by\n", " default cause an exception to be raised, and no DataFrame will be returned.\n", " If False, then these \"bad lines\" will dropped from the DataFrame that is\n", " returned. (Only valid with C parser)\n", " warn_bad_lines : boolean, default True\n", " If error_bad_lines is False, and warn_bad_lines is True, a warning for each\n", " \"bad line\" will be output. (Only valid with C parser).\n", " \n", " Returns\n", " -------\n", " result : DataFrame or TextParser\n", "\n" ] } ], "source": [ "help(pd.read_csv)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:51:04.259933Z", "start_time": "2021-10-11T08:51:04.215541Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
abc
9995999599900025998500749875
9996999699920016998800479936
9997999799940009999100269973
9998999899960004999400119992
9999999999980001999700029999
\n", "
" ], "text/plain": [ " a b c\n", "9995 9995 99900025 998500749875\n", "9996 9996 99920016 998800479936\n", "9997 9997 99940009 999100269973\n", "9998 9998 99960004 999400119992\n", "9999 9999 99980001 999700029999" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv('./data/data_write_to_file2023.txt', \n", " sep = '\\t', names = ['a', 'b', 'c'])\n", "df.tail()\n", "#len(df)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 保存中间步骤产生的字典数据" ] }, { "cell_type": "code", "execution_count": 109, "metadata": { "ExecuteTime": { "end_time": "2021-05-14T07:29:01.225030Z", "start_time": "2021-05-14T07:29:01.219271Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "import json\n", "data_dict = {'a':1, 'b':2, 'c':3}\n", "with open('./data/save_dict.json', 'w') as f:\n", " json.dump(data_dict, f)" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:52:51.877895Z", "start_time": "2021-10-11T08:52:51.862422Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "{'a': 1, 'b': 2, 'c': 3}" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import json\n", "dd = json.load(open(\"./data/save_dict.json\"))\n", "dd" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "## 重新读入json" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 保存中间步骤产生的列表数据" ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "ExecuteTime": { "end_time": "2018-04-27T07:11:56.415515Z", "start_time": "2018-04-27T07:11:56.411564Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "data_list = list(range(10))\n", "with open('./data/save_list.json', 'w') as f:\n", " json.dump(data_list, f)" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "ExecuteTime": { "end_time": "2021-10-11T08:53:14.731694Z", "start_time": "2021-10-11T08:53:14.712935Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dl = json.load(open(\"./data/save_list.json\"))\n", "dl" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 使用matplotlib绘图" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:31:51.190898Z", "start_time": "2019-06-07T08:31:50.419496Z" }, "code_folding": [], "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "x = range(1, 100)\n", "y = [i**-3 for i in x]\n", "plt.plot(x, y, 'b-s')\n", "plt.ylabel('$p(k)$', fontsize = 20)\n", "plt.xlabel('$k$', fontsize = 20)\n", "plt.xscale('log')\n", "plt.yscale('log')\n", "plt.title('Degree Distribution')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:32:20.805797Z", "start_time": "2019-06-07T08:32:20.592198Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD8CAYAAAB5Pm/hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4xLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvDW2N/gAAF4ZJREFUeJzt3XuUnXV97/H3l1y5iIEQk0iAoCKuyloVmFJbFFYBPbFhEXrELmrlUA9tVBSpnLXkUmp71tSjeI62uEQqCoEuqVIBiVWKRcTGrKTUgUTLpZU0cglOwiCg4Tpk8j1/PHsyezLXvffMvjzzfq01a2Y/l71/TwKffOf3/J7fLzITSVJ57dPqBkiSppdBL0klZ9BLUskZ9JJUcga9JJWcQS9JJWfQS1LJGfSSVHIGvSSV3OxWNwDgkEMOyeXLl7e6GZLUUe69996nMnPRRMe1RdAvX76cnp6eVjdDkjpKRDw6mePsupGkkjPoJankDHpJKjmDXpJKzqCXpJIz6CWpRXp39nLy9Sez/bnt0/o5Br0ktUj3um7WP7ae7n/pntbPMeglqQV6d/ayZvMadudu1mxeM61VvUEvSS3Qva6b3bkbgIEcmNaq3qCXpCYbrOb7B/oB6B/on9aq3qCXpCarruYHTWdVb9BLUpNt3LZxTzU/qH+gnw3bNkzL57XFpGaSNJNs+sCmpn6eFb0klZxBL0klZ9BLUskZ9JJUcga9JJWcQS9JJWfQS1LJGfSSVHIGvSSVnEEvSSVn0EtSyU0Y9BFxXUQ8GRH3V207OCLujIiHK98PqmyPiPh8RGyJiJ9ExHHT2XhJ0sQmU9FfD6zYa9slwF2ZeRRwV+U1wLuAoypfq4Grp6aZkqR6TRj0mbkOeHqvzauAGyo/3wCcWbX977Lwr8CCiFg6VY2VJNWu3j76xZnZW/l5O7C48vOhwONVx22rbBshIlZHRE9E9PT19dXZDEnSRBq+GZuZCWQd512TmV2Z2bVo0aJGmyFJGkO9Qb9jsEum8v3JyvYngMOqjltW2SZJpda7s5eTrz952tZ9bUS9Qf8t4NzKz+cCa6u2/4/K6Ju3Ar+s6uKRpNLqXtfN+sfWT9u6r42YzPDKrwEbgaMjYltEnAd8GnhHRDwMnFZ5DXA7sBXYAnwZOH9aWi1JbaR3Zy9rNq9hd+5mzeY1bVfVT7hmbGb+wRi7Th3l2AQ+3GijJKmTdK/rZnfuBmAgB+j+l26uWnlVi1s1xCdjJakBg9V8/0A/AP0D/W1X1Rv0ktSA6mp+0GBV3y4MeklqwMZtG/dU84P6B/rZsG1Di1o00oR99JKksW36wKZWN2FCVvSSVHIGvSSVnEEvSSVn0EtSyRn0klRyBr0klZxBL0klZ9BLUskZ9JJUcga9JJWcQS9JJWfQS1LJGfSSVHIGvSSVnEEvSXvp3dnLydef3FarRDXCoJekvXSv62b9Y+vbapWoRhj0klRlcA3Y3bm77dZ+rZdBL0lVqteAbbe1X+tl0EtSxWA1P7gGbP9AfymqeoNekiqqq/lBZajqDXpJqti4beOean5Q/0A/G7ZtaFGLpsbsVjdAktrFpg9sanUTpkVDFX1EfCwiHoiI+yPiaxExPyKOjIh7ImJLRNwUEXOnqrGSpNrVHfQRcSjwUaArM48BZgFnA1cAf52ZbwCeAc6bioZKkurTaB/9bGDfiJgN7Af0AqcAN1f23wCc2eBnSJIaUHfQZ+YTwP8DHqMI+F8C9wLPZuauymHbgEMbbaQkqX6NdN0cBKwCjgReC+wPrKjh/NUR0RMRPX19ffU2Q5I0gUa6bk4DfpaZfZn5CnArcCKwoNKVA7AMeGK0kzPzmszsysyuRYsWNdAMSdJ4Ggn6x4C3RsR+ERHAqcCDwN3AWZVjzgXWNtZESVIjGumjv4fiput9wL9X3usa4GLgoojYAiwErp2CdkqS6tTQA1OZ+RfAX+y1eStwQiPvK0maOk6BIEklZ9BLUskZ9JJKr2xLA9bKoJdUemVbGrBWBr2kUivj0oC1MugllVoZlwaslUEvqbTKujRgrQx6SaVV1qUBa2XQSyqtsi4NWCuXEpRUWmVdGrBWVvSSVHIGvSSVnEEvSSVn0EtSyRn0klRyBr0klZxBL0klZ9BLUskZ9JJUcga9JJWcQS9JJWfQS+ooM31ZwHoY9JI6ykxfFrAeBr2kjuGygPUx6CV1DJcFrI9BL6kjuCxg/Qx6SR3BZQHr11DQR8SCiLg5Iv4jIh6KiN+KiIMj4s6IeLjy/aCpaqykmctlAevX6FKCVwJ3ZOZZETEX2A+4DLgrMz8dEZcAlwAXN/g5kmY4lwWsX90VfUS8GjgJuBYgM/sz81lgFXBD5bAbgDMbbaQkqX6NdN0cCfQBayJiU0R8JSL2BxZnZm/lmO3A4kYbKUmqXyNBPxs4Drg6M48FnqfoptkjMxPI0U6OiNUR0RMRPX19fQ00Q5I0nkaCfhuwLTPvqby+mSL4d0TEUoDK9ydHOzkzr8nMrszsWrRoUQPNkCSNp+6gz8ztwOMRcXRl06nAg8C3gHMr284F1jbUQklSQxoddXMBcGNlxM1W4P0U/3j8Q0ScBzwK/H6DnyFJakBDQZ+Zm4GuUXad2sj7SpKmjk/GSlLJGfSSWsa55ZvDoJfUMs4t3xwGvaSWcG755jHoJbWEc8s3j0EvqemcW765DHpJTefc8s1l0EtqOueWb65Gn4yVpJo5t3xzWdFLUskZ9JJUcga9JJWcQS9JJWfQS1LJGfSSVHIGvSSVnEEvaco47XB7MuglTRmnHW5PBr2kKeG0w+3LoJc0JZx2uH0Z9JIa5rTD7c2gl9Qwpx1ubwa9pIY57XB7c5piSQ1z2uH2ZkUvSSVn0EtSyRn0klRyDQd9RMyKiE0R8e3K6yMj4p6I2BIRN0XE3MabKUmq11RU9BcCD1W9vgL468x8A/AMcN4UfIYkqU4NBX1ELANWAl+pvA7gFODmyiE3AGc28hmSWsMJysqj0Yr+b4CPA4NPSiwEns3MXZXX24BDRzsxIlZHRE9E9PT19TXYDElTzQnKyqPuoI+I04EnM/Pees7PzGsysyszuxYtWlRvMyRNAycoK5dGKvoTgTMi4hHg6xRdNlcCCyJi8EGsZcATDbVQUtM5QVm51B30mXlpZi7LzOXA2cD3M/MPgbuBsyqHnQusbbiVkprGCcrKZzrG0V8MXBQRWyj67K+dhs+QNE2coKx8pmSum8z8AfCDys9bgROm4n0lNZ8TlJWPk5pJGsYJysrHKRAkqeQMekkqOYNekkrOoJdmAKczmNkMemkGcDqDmc2gl0rO6Qxk0Esl53QGMuilEnM6A4FBL5Wa0xkIDHqp1JzOQOAUCFKpOZ2BwIpekkrPoJekkjPoJankDHqpAzmlgWph0EsdyCkNVAuDXuowTmmgWhn0UodxSgPVyqCXOohTGqgeBr3UQZzSQPUw6KUO4pQGqodTIEgdxCkNymHJEtixY+T2xYth+zT0wlnRS1KTjRby421vlEEvtZgPP2m6GfRSi/nwU2dbsgQiRn4tWdLqlg0x6KUW8uGnztfsbph61B30EXFYRNwdEQ9GxAMRcWFl+8ERcWdEPFz5ftDUNVcqFx9+UjM0UtHvAv5XZv4a8FbgwxHxa8AlwF2ZeRRwV+W1pL348FP7aVY3zOLFtW1vVN1Bn5m9mXlf5eedwEPAocAq4IbKYTcAZzbaSKmMfPip/TSrG2b7dsgc+TUdQythivroI2I5cCxwD7A4M3sru7YDo/4bFRGrI6InInr6+vqmohlSR/HhJzVLww9MRcQBwC3An2bmryJiz77MzIjI0c7LzGuAawC6urpGPUYqMx9+mn7NeDBp8eKxP6NdNFTRR8QcipC/MTNvrWzeERFLK/uXAk821kSpczgmvr00oyum2d0w9Whk1E0A1wIPZebnqnZ9Czi38vO5wNr6myd1FsfEqx01UtGfCJwDnBIRmytfvwt8GnhHRDwMnFZ5LZWeY+KnVzNGxDR7NEyz1N1Hn5nrgRhj96n1vq/UqUYbE3/Vyqta3KryaFY3TBn5ZKw0BRwTr3Zm0EtTwDHxtSnrg0ntyqCXxlDLCBrHxNemrA8mtSsXHpHGUD2CZqK+dsfEq51Z0UujcARNbRwR094MemkUzipZGx9Mam8GvbSXmT6CphMW0lBtDHppLzN9BE0zqnO7YZrLoNeMMdlRNI6gmX52wzSXo240Y0x2FE2ZRtA0Y/ZGtT8res0IM3UUTbPGq9sV094Mes0IZRlF0643Su2KaW8GvUqvTKNovFGqehj06ki1TE/QrqNorM7VLAa9OlItC3y06yiaZvWfS5HZ+uVau7q6sqenp9XNUIfo3dnL6z7/Ol7a9RL7zt6XrRduZckBrS2D6xndEmOt5kBRQU/FOY66KbeIuDczuyY6zopeLVfrOqvteGO1Xatzu2EEBr3aQC3dMM24sdqufefgjVLVx6BXS9U6vr2eG6u1Bne7Vudgha76GPRqqVq7Yeq5sdquwW11rmbxZqymXO/OXs6+5WxuOuumcW+SVt9UHTTRzdVm3PRsxk1SlUgm7NoFr7wC++1XbNu+HZ55Bl5+eehr1iw48cRi//e+B489BkccAaeeWvdHT/ZmrHPdaMpNdk6Z1//Pbl560+5h/xW++NIAr3t/Ny98Y/Tz2rk6H+sfIE2DzOEhOvh1xBEwZw48/jg8/PDwfS+9BGefDfPmwbp18MMfFtuqj/nCF2D2bLjmGli7dvh+gB/9qPh+wQXw1a8OvW8mLFwITz1V7D//fPjmN4e3+Ygj4JFHip8/8xm48054z3saCvrJMug1rslW51Cptp/vhQvXwJzdfHHjGr549p+zeP8lo1bbLy7cCLOHd8Mwu58XF3beLJEzoo98167i++zZRcD9/OfDQ/Tll+Hoo4f+1bvrrpFBetZZ8PrXw09+Al/60sgg/tSn4M1vhttvh8svH/7eL78Md98NxxwDX/wifOQjI9u4ZUvx/n//93DJJSP3r1hRtO/OO+Gv/qrYNn9+Ef7z5sHnPldc37PPFtcwuO/AA2HffYfe54QTil/jBs+bPx9e9aqh/RdeWIR49XtX77/++uLPs3rbNLLrRqPa00Wy8nw4/kvQ80G4/aqJu0hWng/HXlsE+K65cN8fw+1XtbSLpGPHnmdCf//woJs/HxYtKvZt2DCyon3DG+D444vzPv/5kUH5znfCypXw9NPwJ38ycv8FF8A558B//Re87W3D9+/eXYTz6tXQ0wO/8Rsj23zjjfDe98IPfgC/8zsj969dC2ecAXfcAe9731AIDobll78MXV3F+Z/97ND2wWMuuQQOPxzuuw+++93h++bNK977wAPh0UeL6rl637x5RVU9e3bx5wNF9T/efyBtbrJdNwb9DLAnuA7ohbPOhptvgueWTBzaB/TCha+DOS/BK/vClVvhuSVjB+qrqo4fVDkvd478baBZQV9TcA8MFH2pUPwavnPn8LCbMweOO67Y//3vF29Qvf81rymCDuCKK4p+2OogPuYY+MQniv2rVhVdDNXnv+tdRdgBHHRQUVlWe//74brrip9nzSrCt9pHPwpXXgkvvjjUX1xdeX7843DZZUXQn3TSUFAOfj/vPHj3u6GvD/7sz0YG7cqVxfX/4hfwj/84PKTnzSuq8SVL4IUXYNu2kUE8bx7s4xiQqWIffYnVGtx7Qu7kbjh8PZzUDbdfNXG/9sndEJUgiYE9503q+EGD5zHOeWPZtm0oKAeDkDPHPv7ii4tfhz/72eL11VfD977H9q6q8+fPL35tB/jQh2DpbcMr2mXLimoQisAePHbQm98M999f/Hz55bBx4/D9J5wwFPS33QY//enwsFuwYOjYBQuKoK4OyuOPH9p/6aXF9VTvf9ObhvbfcQfMnTs8RA85pNg3fz786lfFttGq1oMPHrqO0SxaVPRTj2XhQvijPxp7/377wRvfOPZ+NdW0VPQRsQK4EpgFfCUzPz3e8WWp6Ov5lb/uahtGdKvAOKNIxqrOf947sh/1qKOIw18auzp/aFcRiJs2Fb+qV86PWT2wdPPIBvS+hfxh/9D7r1sHRx45cXX+iU9A9/DhlkvoZQcjfztYzHa2z1teBNwzzxQXffnlRdhWB+WCBXDrrcVJf/u3RRdAdRAvXAgf+1ix/447ir+E6iA96CD47d8u9m/dWoy0qH7/+fOH9+VK06hlXTcRMQv4KfAOYBvwI+APMvPBsc6pNejrCcdmnLMnuPY6HiBfqgrSuXPh1a+GgQFidqWbYLTQfu55WLNmRD9qfOaKsYP77ScVQfV7vwcPPACnn0488rOx+84ZJW1vu4348neHjh9UOS8v+u/FSIFvfKPoSqiEYPT+fMy/s3z3WUNh+clPwtKlLFnYz46n5444dvFrdrN9xz5FNfyzn43sPjj66KLb4vnnhyriDu9rlerRyq6bE4Atmbm10pCvA6uAMYO+VjV1Rfzyl/DCC+zYsXTsc265ZXhFu3QprFo1uc8544yiL/fll4F7Rz0eKIJq0AUXFDfKXnkFmFWE9lvWwD674dg1sO7Pi38gXnyxOLbavHnAFWN3q8yaNdQHeuCBRT/sU5X3Hwzt2f1Dn/N/rx4ZpF1d8E9/OeqIGA7bACdfWbx+z3uKr4rF4/xGw803j9i+/RcjQ75Qaf8b3zj+r//77z/2Pkl7TEdFfxawIjP/uPL6HOA3M3OUsVCFWiv6cbsi9j+gGF714x8XB594ImzYQJBjn7N3VXvKKXDXXZO7IblqVXHjad484jvfHvv4T/6foSD99V+Ht78dMol9Yuxqe2B3cdNrMIgrVWvNNz1PP3/s6vw7o/edt83IE0ljavubsRGxGlgNcPjhh9f+BmNVtB/8ILz2tUPHXXRRMVzsQ+Ocs3nz8Iq2ulKc6Ibk2rVVFzXO8ZddNtofwlA1P1q1vc+S4qbYeNe+573Gvuk5e/lGdo1Snc8+cuzx6oa5VB7TUdH/FvCXmfnfKq8vBcjMT411Ts0VfY0VbbPOqesz6qi253zkWHYtGnnTc3bfW3jlC5tGPUdS+bSyov8RcFREHAk8AZwNvHdKP6GeYXxNOGffFd28OMrx+64Y+zPqqbYNc0m1mPKgz8xdEfER4LsUwyuvy8wHpvIz6gnHZpxz9Gkb2bx95PFHn2ZoS2odn4yVpA7lUoKSJMCgl6TSM+glqeQMekkqOYNekkquLUbdREQf8Gidpx8CPDWFzek0M/n6Z/K1w8y+fq+9cERmjvL4/HBtEfSNiIieyQwvKquZfP0z+dphZl+/117btdt1I0klZ9BLUsmVIejHWe9sRpjJ1z+Trx1m9vV77TXo+D56SdL4ylDRS5LG0dFBHxErIuI/I2JLRFzS6vY0U0RcFxFPRsT9rW5Ls0XEYRFxd0Q8GBEPRMSFrW5Ts0TE/Ij4t4j4ceXa/3er29RsETErIjZFxLdb3ZZmi4hHIuLfI2JzREx6JsiO7bqpZxHyMomIk4DngL/LzGNa3Z5mioilwNLMvC8iXkWxWO+ZM+HvPiIC2D8zn4uIOcB64MLM/NcWN61pIuIioAs4MDNPb3V7mikiHgG6MrOmZwg6uaLfswh5ZvYDg4uQzwiZuQ54utXtaIXM7M3M+yo/7wQeAg5tbauaIwvPVV7OqXx1ZrVWh4hYBqwEvtLqtnSSTg76Q4HHq15vY4b8z64hEbEcOBa4p7UtaZ5K18Vm4EngzsycMdcO/A3wcWD3RAeWVAL/HBH3VtbdnpRODnrNcBFxAHAL8KeZ+atWt6dZMnMgM98CLANOiIgZ0XUXEacDT2bmva1uSwu9LTOPA94FfLjShTuhTg76J4DDql4vq2zTDFDpn74FuDEzb211e1ohM58F7gZWtLotTXIicEaln/rrwCkR8dXWNqm5MvOJyvcngW9SdGFPqJODfs8i5BExl2IR8m+1uE1qgsoNyWuBhzLzc61uTzNFxKKIWFD5eV+KwQj/0dpWNUdmXpqZyzJzOcX/79/PzPe1uFlNExH7VwYfEBH7A+8EJjXqrmODPjN3AYOLkD8E/MNUL0LeziLia8BG4OiI2BYR57W6TU10InAORUW3ufL1u61uVJMsBe6OiJ9QFDt3ZuaMG2Y4Qy0G1kfEj4F/A76TmXdM5sSOHV4pSZqcjq3oJUmTY9BLUskZ9JJUcga9JJWcQS9JJWfQS1LJGfSSVHIGvSSV3P8Hj25T3kVeJoAAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "# red dashes, blue squares and green triangles\n", "t = np.arange(0., 5., 0.2)\n", "plt.plot(t, t, 'r--')\n", "plt.plot(t, t**2, 'bs')\n", "plt.plot(t, t**3, 'g^')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:33:26.540992Z", "start_time": "2019-06-07T08:33:26.292284Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# red dashes, blue squares and green triangles\n", "t = np.arange(0., 5., 0.2)\n", "plt.plot(t, t**2, 'b-s', label = '1')\n", "plt.plot(t, t**2.5, 'r-o', label = '2')\n", "plt.plot(t, t**3, 'g-^', label = '3')\n", "plt.annotate(r'$\\alpha = 3$', xy=(3.5, 40), xytext=(2, 80),\n", " arrowprops=dict(facecolor='black', shrink=0.05),\n", " fontsize = 20)\n", "plt.ylabel('$f(t)$', fontsize = 20)\n", "plt.xlabel('$t$', fontsize = 20)\n", "plt.legend(loc=2,numpoints=1,fontsize=10)\n", "plt.show()\n", "# plt.savefig('/Users/chengjun/GitHub/cjc/figure/save_figure.png',\n", "# dpi = 300, bbox_inches=\"tight\",transparent = True)\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "plt.figure(figsize=(5,5))\n", "sns.set(style=\"whitegrid\")" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:34:00.646076Z", "start_time": "2019-06-07T08:34:00.215086Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(1)\n", "plt.subplot(221)\n", "plt.plot(t, t, 'r--')\n", "plt.text(2, 0.8*np.max(t), r'$\\alpha = 1$', fontsize = 20)\n", "plt.subplot(222)\n", "plt.plot(t, t**2, 'bs')\n", "plt.text(2, 0.8*np.max(t**2), r'$\\alpha = 2$', fontsize = 20)\n", "plt.subplot(223)\n", "plt.plot(t, t**3, 'g^')\n", "plt.text(2, 0.8*np.max(t**3), r'$\\alpha = 3$', fontsize = 20)\n", "plt.subplot(224)\n", "plt.plot(t, t**4, 'r-o')\n", "plt.text(2, 0.8*np.max(t**4), r'$\\alpha = 4$', fontsize = 20)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": true, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def f(t):\n", " return np.exp(-t) * np.cos(2*np.pi*t)\n", "\n", "t1 = np.arange(0.0, 5.0, 0.1)\n", "t2 = np.arange(0.0, 5.0, 0.02)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\nMG++aS4c//2vc3K5jaq5o//ySzMnxRBfUTrxxP79Znu0xTlyc00yqd27vZYkciJ1QF94oYn0OXjQ\nGXm8ICcHtm2Dc86JrJ++fWHy5NiO4lqyxPw97TRHurMK322+/daswizOkZxsdttOnuy1JN5To4YJ\nV5061WtJyk6DBma/SaTJ4OrVM3lnNmxwRi4vmDDBfAaH7l6twnebb781tkUn+PLL2E689s03ZjOd\nE/TqZebWYjZuxfqeFad8de+9ZwI+YpUpU5zTF1iF7z5ZWeBUfvcmTeDTT53pywvuvts5hd+tW3xn\nSQyHHj1g61avpbA4wZtvmhW+QzhV8aqviCwVkeUi8lCQ97uJyE4RmRd4/COiAW+/3YRcxRo7d5qi\nFpE4ogpz+ulmV+batc705yabNxtl36aNM/21a2fm4bffnOnPTbZtM2kinKJrV5tjKF6oXTv0XFsh\nELHCF5Ek4HmgD9AauF5EgmXBmqaq7QKPxyIa9MCB2Lx9nz7d1GgtVM0pIkTMyjYW7bVTp5pqTk7l\nAypXztw5LVzoTH9uMn48PPGE11JYEgAnVvgdgGxVXaOqh4ExQP8g7ZyLmUtLi83b95Ytna9PG6sK\n30nTVj6ffmrMGbFGNOYiVsnOjo+NYz7FCYXfAFhX6PX6wLGinC8i80XkCxEpPqA0FPLttbEWr9+y\npfM/7LS02Nx9HA0lF6tx+FlZ5jud6Kia4txO+XXy2boVXnvN2T5jFLectj8CjVX1bIz5JzJPY9Om\nJl45Fu34TtO6talnGkvk5Zlc9mef7bUk3rN6tTFRhlMLIF5ZssTk9nc6qqZ8efjrX2Nrb8LevaYO\niMOUc6CPHKDwf6hh4NhRVHVvoecTRORFEampqtuDdZiZmXn0eVpa2rHV6cGs5PLNOq1aRSZ9rCMC\nlSp5LUV4JCWZTIiWgjudaNydzJ4N1avHzsUkWqat6tXNxqUffoidpIMvv2yCEJ57LujbWVlZZJXB\nrB1xagURSQaWAT2BjcAPwPWquqRQmzqqujnwvAPwX1VNKaa/0FIrbNliYnVtlR9LLJOfAqFfP+f7\nzsgwq8RYcQhfc42Zh5tucr7vBx4w+sJpH1q06NcPBg4MOXOqa6kVVDUXuAuYCPwCjFHVJSJym4gM\nDjS7SkQWichPwDPAtZGOS+3aVtlbjufw4diK4OrXLzrKHmIruEE1ur6MWJqLI0dMRF8U7kZs8jQ3\n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\nRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(1)\n", "plt.subplot(211)\n", "plt.plot(t1, f(t1), 'bo')\n", "plt.plot(t2, f(t2), 'k')\n", "\n", "plt.subplot(212)\n", "plt.plot(t2, np.cos(2*np.pi*t2), 'r--')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2017-05-13T09:23:13.850060", "start_time": "2017-05-13T09:23:13.255032" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.gridspec as gridspec\n", "import numpy as np\n", "\n", "t = np.arange(0., 5., 0.2)\n", "\n", "gs = gridspec.GridSpec(3, 3)\n", "ax1 = plt.subplot(gs[0, :])\n", "plt.plot(t, t**2, 'b-s')\n", "ax2 = plt.subplot(gs[1,:-1])\n", "plt.plot(t, t**2, 'g-s')\n", "ax3 = plt.subplot(gs[1:, -1])\n", "plt.plot(t, t**2, 'r-o')\n", "ax4 = plt.subplot(gs[-1,0])\n", "plt.plot(t, t**2, 'g-^')\n", "ax5 = plt.subplot(gs[-1,1])\n", "plt.plot(t, t**2, 'b-<')\n", "plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:35:14.708956Z", "start_time": "2019-06-07T08:35:14.695191Z" }, "code_folding": [ 1 ], "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "\n", "def OLSRegressPlot(x,y,col,xlab,ylab):\n", " xx = sm.add_constant(x, prepend=True)\n", " res = sm.OLS(y,xx).fit()\n", " constant, beta = res.params\n", " r2 = res.rsquared\n", " lab = r'$\\beta = %.2f, \\,R^2 = %.2f$' %(beta,r2)\n", " plt.scatter(x,y,s=60,facecolors='none', edgecolors=col)\n", " plt.plot(x,constant + x*beta,\"red\",label=lab)\n", " plt.legend(loc = 'upper left',fontsize=16)\n", " plt.xlabel(xlab,fontsize=26)\n", " plt.ylabel(ylab,fontsize=26)" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:35:29.415424Z", "start_time": "2019-06-07T08:35:29.157757Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.random.randn(50)\n", "y = np.random.randn(50) + 3*x\n", "pearsonr(x, y)\n", "fig = plt.figure(figsize=(10, 4),facecolor='white')\n", "OLSRegressPlot(x,y,'RoyalBlue',r'$x$',r'$y$')\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": 206, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAbUAAAENCAYAAACIM/vFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlcVNf9//HXsImCiivKgOACAooiiBiNkSwSoonE1Faz\nqDVYtQkxMalN2v7aaL+tCW2WakirSRuzWYlJk2AioAmKcQniElAxIig7imsUEIRh5vfHlVEEHfY7\nzHyej8d9zNyZe++8Zxznwz333HM1BoPBgBBCCGEBbNQOIIQQQrQVKWpCCCEshhQ1IYQQFkOKmhBC\nCIshRU0IIYTFkKImhBDCYkhRE0IIYTGkqAkhhLAYdmoHEEJNCQkJrFu3jk8//bTe4zU1Nbz00kv0\n798fnU7HuXPneO2117C1tTW5TVPrtmbbajl79iyrVq2itraW9PR0xo8fzx/+8Afs7Ez/hPz3v/9l\n//79PPnkkzg4OLBx40Y8PDyYN29eo8tPmzaNf//73wwcOLCt34awAhoZUURYo/j4eL777jsOHz6M\nTqdj27Zt9Z5/6aWXqKio4K233gJg6dKl2Nvb87e//c3ktk2t25ptq2XhwoWsWrWKrl27UlVVRXBw\nMPfddx+rVq0yue4HH3zA/Pnz0Wg02NvbEx0dzWuvvdboshs3buTRRx8lNzeXQYMGtfXbENbAIIQV\nW758ueHuu++u99jVq1cNPXr0MOzcudP42O7duw19+vQxuT1T67Zm22rJzs42+Pv7G9LT042PvfLK\nK4YuXboYrl69anL9999/37Bz505DWlqa4eLFi7dc7vLly4YlS5YYbGxsDPn5+W2SXVgfOaYmxE0y\nMjIoLy9n6NChxse8vLy4cOECP/zwQ6vWbc221eLg4MDZs2c5fvy48TFnZ2dqamq4fPlyk7bh4eFB\nSEgILi4ut1xmzZo1LFy4EIM0HolWkKImzEp+fj4+Pj71Hnv88cfZtGlTh2UoLCwEwMnJyfhY9+7d\nASguLm7Vuq3ZdmOysrJ48MEHcXJywsbGBltbW+zt7enduzeXLl1q9vYaM2jQIM6cOcPPf/5z42N7\n9+5lxIgR9O3bt0nb2LBhA++++y4xMTEsW7YMvV5f7/kDBw7g5+eHs7Nzm2QW1ks6igiz8vXXX+Pl\n5WWcr66u5ssvv+RPf/pTveV0Oh1PPfUUOp0OoMFf9xqNBoPBgEajYfbs2YSHhzc5Q2VlJQCOjo7G\nx7p06QJAWVlZq9at+zFvybZv9uOPP/LII48QGxvLF198wccff8xf//pXcnJyGizblp/XyZMn+fzz\nz/nmm2+alDMkJIR+/frRr18/AObPn89LL71kPIao1+v5+uuvefnll8nPz0ej0TRpu0I0RoqaMCvJ\nycncd999xvk9e/bQs2dPhg8fXm85Ozs73nnnnXbJ0FgTWXl5OVC/GLVkXQcHhxZv+2aLFy9m9erV\n3HvvvQA89thjREVFcfbsWWMBqdNWn1dNTQ3z58/n3XffZcKECU1ax9/fv978pEmTeP7553nllVew\ntbVl3bp1/PKXv2x1NiFAmh+FGdHr9aSkpBh/pEEpcpMnT+7QHFqtFqBe813dXpSpHnmm1m3Ntm+0\nb98+Tp06xZQpU4yP5ebm4ujoSM+ePZu8neZ65plneOGFF3jssceatHxVVRX/93//x4ULF+o9XlZW\nxoULFzh16hRVVVV4enoCDfcghWgu2VMTZmPfvn1UVlYSFBRkfCw5OZl58+aRk5ODo6Mj7u7ugLLH\n8PTTTxub0xrT0ubHUaNG0adPH3Jzc417PJmZmfTo0YOAgIBWrWtnZ9fibd/oxIkT9T4ngE8++YQZ\nM2Y0ujfYFp9XTEwMkZGRPPDAA8bXqzuedys//vgjr7zyCvfffz/jxo0DlGOHvXv3pm/fvqxfv57c\n3Fx+//vfA1BaWmp8rfHjxzNnzhwTn4QQN1Gv46UQ9a1cudLQv39/4/yePXsMDg4OhvT0dENsbKyh\npqamzV/z5ZdfbtCl32AwGJ555hnDb37zG+P8nDlzDL/97W+N84mJiYYFCxYY9Hp9s9c19fymTZsM\nUVFRjW67ztGjRw0PPPCAcT4rK8swcuRIw6lTp273dlts3bp1hiVLlhiSkpIMSUlJhsTERMO8efOM\nz9/q86itrTU8/fTThtraWoPBYDDodDpDcHCwYfXq1Y2+TkpKikGj0UiXftFicvK1MBv33nsv5eXl\n3Hfffbi5uTFo0CB27dqFRqMhICCAxx9/vM1ea+vWrXz22WckJCRw4cIFHnnkESZOnMivf/1rACoq\nKli6dCmenp7GUT9ef/11417QP/7xD/7xj3/w448/0rVr13rbNrWuqedjYmKIiYlhz549+Pr63vI9\nrF+/nqKiIuzs7MjPz+ell17Czc2tzT6jOllZWYwaNarBXt6kSZNISUkBbv955OTkEBsbS/fu3Skt\nLSU0NJSoqKgGr/P3v/+dzZs3s3PnTqZNm8aMGTOYP39+m78fYdmaVNSSkpJ47rnn0Ov1REVF8eKL\nL9Z7Pisri/nz53Pw4EFWrlzJ888/b3zu0qVLLFiwgCNHjmBjY8N7771HaGho278T0alVVVXRq1cv\nMjIyGnTpt0bp6enY2dkxcuRItaMI0amY7Cii1+uJjo5my5YtZGZmsmHDBo4dO1ZvmT59+vDWW2+x\nbNmyBus/++yzTJ06lR9//JGMjAz8/PzaLr2wGDt37sTV1VUK2jXff/89I0aMUDuGEJ2OyaKWlpaG\nt7c3np6e2NvbM3v2bOLj4+st07dvX4KDgxsMbnr58mV27txpbEKws7OjR48ebRhfWIqjR4/yi1/8\nQu0YZuHIkSMMGTJEztcSogVM9n4sLi7Gw8PDOO/u7k5aWlqTNp6bm0vfvn2ZP38+GRkZjB071jgo\nqhA3evbZZ9WOYDZGjhwpzY5CtFC7nqem0+k4ePAgTz/9NAcPHqRbt268+uqr7fmSQgghrJjJPTWt\nVktBQYFxvqioyHgCqSnu7u54eHgwduxYAGbOnElMTEyjy0pTixBCiJs1t4O+yT21kJAQcnJyyM/P\np7q6mri4OKZPn96kAK6urnh4eBhH905OTm4wZM7N68rUvOnll19WPUNnnORzk89NPjfzn1rC5J6a\nra0tsbGxhIeHG7v0+/n5sXbtWjQaDQsXLqS0tJSxY8dSVlaGjY0Nq1at4ujRozg7O7N69Woef/xx\nampqGDJkCOvWrWtRUCGEEMKUJg2TFRERQVZWVr3HFi1aZLzv6upqvKTGzUaPHs2+fftaEVEIoZrq\nali3DhITwcEBjh+H8+fBzQ0WLoQ+fdROKEQ9MvZjJxcWFqZ2hE5JPjcTrl5VitnKlXDDH6xhABkZ\nysxrr8Ff/qIUN1tbNVJ2GvJ96zhmM0xW3fWchBAq+/ZbePLJ68VsxAhYuhScnaGiQpm+/BK2bVOe\nHz0aVq+Gu+5SL7OwSC2pC1LUhBDXJSfDgw9CVZVSzF5+GX72M7C5qU+ZwQBffAHPPw/5+cpjH38M\nbTg+pxBS1IQQLffddxARAZWVsGgR/POfDYvZzSorYfly+NvfwM4ONm+GZlzmR4jbkaImhGiZ779X\nilF5OcyfD//+t+mCdqPf/AZef11pokxJgeDgdosqrIcUNSFE86Wnw+TJcPmy0nz4wQfN7/ih18Pc\nubB+PfTrB3v2wLBh7ZNXWA0pakKI5rl6FYKC4OhRmDkTNmxQmhFboroaHnoItm6FIUPgwAFwcWnb\nvMKqSFETQtzW4qWLySvJM87PPZzNYz+epMi5G0+FT6Darv4empebF2veXNP0FygrU/b6fvgBfv1r\n5bicEC3Ukrog56kJYUXySvLwfMITAPeT55j1v1z0Gvjv/7uPgf4DGi7/cV7zXqB7d/jwQxgzBtas\ngTlz4I472iC5EE3TrqP0CyHMk41Oz7zVO7CtNZAybQQnGiloLTZypNJxxGBQelHW1LTdtoUwQYqa\nEFbo/s8zGHTyPOf6d+fLOePa/gX++EcYPBgOH4Z//KPtty/ELUjzoxBWZkDhRabFHQDgo+hJXO1q\n32bbvvGYXbB7L/6am0vV715i0Y6vKXVqeHHgZh+zE8IEKWpCWJkZH6Zhr9Oza8pwjgW6t+m2bzxm\ndw5P9vETITtP8pvSXGL/GAE3XTex2cfshDBBmh+FsCLDLl4mcG8+1Q62fPlESLu/3saoCVxxciBg\nfyG+h0ra/fWEkD01IazIE5k5AKRMHUFZr24ml8/MzCRiVkSTt595LBNPPI3zl3t3Y+uMUTz88X6m\nfnKQY6O1zQ8tRDNIURPCWuzfz/iSs1ztYsfWR0Y3aZVKXaWxObFJL7Fsf4PHtk8byZQvDjH8yCmG\nZZ4iZ8TAJm9PiOaS5kchrMXy5QCkTPWnzKVhp432UuXkwPaHRgIw7ZODHfa6wjpJURPCGuzdC5s3\nU2ln2+S9tLaU/NBIqrra459ejFfWmQ5/fWE9pKgJYQ2u7aVtGjaI8p4dt5dW50p3R7ZPHQHAtI2y\ntybaT5OKWlJSEr6+vvj4+BATE9Pg+aysLCZMmICjoyNvvPFGg+f1ej1BQUFMnz699YmFEM2TmgpJ\nSeDszGfDvVSL8e3DAVztYseofQV4nDinWg5h2UwWNb1eT3R0NFu2bCEzM5MNGzZw7Nixesv06dOH\nt956i2XLljW6jVWrVuHv7982iYUQzVM3okd0NGVdHFSLUd6zK99F+AEwVfbWRDsxWdTS0tLw9vbG\n09MTe3t7Zs+eTXx8fL1l+vbtS3BwMHaNXLKiqKiIhIQEFixY0HaphRBNU1IC//ufcn20p59WOw1b\nZ4ymxt6WoO/z6F9ySe04wgKZLGrFxcV4eHgY593d3SkuLm7yCyxdupS///3vaG4aSUAI0QHeeQd0\nOnj4YXBv29FDWuJy726k3TUUgElJP6qcRliidu0osnnzZlxdXQkMDMRgMMj10oToSNXVsHatcj86\nWt0sN9gxVTkUMSE5CwddrcpphKUxefK1VquloKDAOF9UVIRW27RRAXbv3s2mTZtISEigsrKSsrIy\n5s6dy4cfftjo8suv9dACCAsLIywsrEmvI4RoxBdfwOnTMGKEcuFOM5Hv3Z/8YX3xzDnHpKLTascR\nZiQlJYWUlJRWbcNkUQsJCSEnJ4f8/HwGDhxIXFwcGzZsuOXyN+6NrVy5kpUrVwKwY8cOXn/99VsW\nNKhf1IQQrfT228rt0083GEhYbTsi/Jkb+x0PnihUO4owIzfvzKxYsaLZ2zBZ1GxtbYmNjSU8PBy9\nXk9UVBR+fn6sXbsWjUbDwoULKS0tZezYsZSVlWFjY8OqVas4evQozs7OzQ4khGgDhw7Bzp3Klaif\neELtNA3su2soM9el4nf+EqSnQ2Cg2pGEhWjS2I8RERFkZWXVe2zRokXG+66urhQW3v4vrsmTJzPZ\njJpAhLAEN16/7EZL9mcyFYh37cW/Fvzc+PjNAw6rpdrRnu/v8eHer47AmjXKJEQbkAGNhejEbrx+\nWZ2u5Ve5Nz4ZgAPPj8fT3cX4XGMDDqvluwg/pah9/DH87W/Qo4fakYQFkGGyhLAwoSnZdLmq4+ho\nLaU3FDRzc9qjFxn9ekFFhVLYhGgDUtSEsDDjt2cDsDvcV+Ukpn09bJBy51//AjnlR7QBKWpCWJAB\nhRcZnH2Wym72ZIxT/9iZKd+79Yf+/eHIEThwQO04wgJIURPCgtTtpe2/cyg1Xcz/kLnO1gYefVSZ\nkSZI0QakqAlhITS1ekJTlKKWere3ymmaYc4c5XbDBmVILyFaQYqaEBZi+JFT9D5XwVnX7uT4D1A7\nTtMFBYGvL5w5A1u3qp1GdHLm3z4hhGiS8duOA9f20sxsBJFbyczMJGL2A8yyq2U+kLI4ilfvuPWV\nub3cvFjzppzTJm5NipoQFqBLZQ1jvs8FIPVuH5XTNF2lrhLPJzzJLu0Nv8pmQulZhj8ykKpujV/3\nLe/jvI4NKDodaX4UwgKM+T4XxyodOX6unBvY+U5iPu/aneMjBuJQXWsszkK0hBQ1ISxAXa/HzrSX\ndrO6zi1170WIlpCiJkQn1+tsOcMPFVNjb8v+O4eoHafFDk4YTI29LT6HS3A5V652HNFJSVETopMb\nu+sENgY4FDKISucuasdpsUrnLhwKGYSNAcbtyFE7juikpKgJ0ckF7z4JKJdz6ez2hl1rgkyRJkjR\nMlLUhOjEXCsqGXz8LFWOdhwJHqR2nFY7EuxBhXMXtPkXGVhwUe04ohOSoiZEJzap8DQAh0I8O8Ww\nWKbU2tuSHqqMWVm3BypEc0hRE6ITu+taUTvQiTuI3KzuvQTtkaImmk+KmhCd1cmT+Fy8TFVXezKD\nPNRO02aOjdJS4eSANv8irkU/qR1HdDJS1ITorD79FICMcZbR9Fin1t6WjPFeAATvkr010TxNKmpJ\nSUn4+vri4+NDTExMg+ezsrKYMGECjo6OvPHGG8bHi4qKuOeeexgxYgQBAQGsXr267ZILYe02bgTg\nwETLaXqsU/ee5LiaaC6Tf97p9Xqio6NJTk7Gzc2NkJAQIiMj8fW9flXdPn368NZbb/Hll1/W37id\nHW+88QaBgYGUl5cTHBxMeHh4vXWFEC1w4gQcPMgVO1syg9zVTtPmfhyt5YqTA+75F3At+olSdxe1\nI4lOwuSeWlpaGt7e3nh6emJvb8/s2bOJj4+vt0zfvn0JDg7Gzq5+jRwwYACBgYEAODs74+fnR3Fx\ncRvGF8JKXWt6THXrj87Bcpoe69Ta2xqv3C0dRkRzmCxqxcXFeHhcPwjt7u7eosKUl5dHeno6oaGh\nzV5XCHGTa02P33l0ouumNVNdL8jg3TLAsWi6DvkTr7y8nJkzZ7Jq1SqcnZ1vudzy5cuN98PCwggL\nC2v/cEJ0Njk58MMP0KMHBwb0wU3tPO3kx0B3KrvZ45F7nv4llzjj1lPtSKKdpaSkkJKS0qptmCxq\nWq2WgoIC43xRURFarbbJL6DT6Zg5cyZz5swhMjLytsveWNSEELfw+efK7UMPUVNzTt0s7Uhnb0t6\nqBd3bM8meNdJEn8xRu1Iop3dvDOzYsWKZm/DZPNjSEgIOTk55OfnU11dTVxcHNOnT7/l8gaDod78\nk08+ib+/P88++2yzwwkhGvHFF8rtjBnq5ugAB6/1ggySXpCiiUzuqdna2hIbG0t4eDh6vZ6oqCj8\n/PxYu3YtGo2GhQsXUlpaytixYykrK8PGxoZVq1Zx9OhRMjIyWL9+PQEBAYwZMwaNRsPKlSuJiIjo\niPcmhOUpKYHUVHB0hIgI2Piu2ona1dEx7lR2tWdQ7nn6lJaRr3YgYfaadEwtIiKCrKyseo8tWrTI\neN/V1ZXCwsIG602cOJHa2tpWRhRCGG3apNyGh4OTk7pZOoDO3pbMYA/G7jrJ6L15HKTzXdVbdCwZ\nUUSIzsSKmh7rpId6ARCYmqdqDtE5SFETorP46SfYtg1sbODBB9VO02EOjx2Ezs4G76On6XG1Wu04\nwsxJUROis9i8GXQ6uOsu6NtX7TQdpsrJgawAN2z0BkJLzqodR5g5KWpCdBZ1w9BZUdNjnfRrAxzf\nUXxG3SDC7ElRE6IzqKyExETlvonzPS2Rccis0nNw5YrKaYQ5k6ImRGfw7bdQUQFBQeDpqXaaDnep\njxMnffrjWKuHrVvVjiPMmBQ1IToDK+z1eLO6JkhuuhqIEDeSoiaEudPprp+fJkUNvvpK+UyEaIQU\nNSHM3Z49cP48DBsG/v5qp1FNqbsLhd2d4MIF2LlT7TjCTElRE8Lc1e2lRUaCRqNuFpXt0fZX7kgT\npLgFKWpCmDODAeouynubgcStRb2idtPg6UKAFDUhzFtWlnL9tN69YcIEtdOo7njvnuDqCgUFcPiw\n2nGEGZKiJoQ5++or5XbaNLDrkGv6mjWDRgMPPaTM1DXLCnED+V8ihDmr++GWpkcAMjMzWe5yhuXA\nsTdf47nDu267vJebF2veXNMh2YR5kKImhLk6e1bp+ejgAPffr3Yas1Cpq+Tcc2Oo3ncI3wuXCJja\nj8u9u91y+byP8zounDAL0vwohLlKSAC9Hu6+G7p3VzuN2ajpYsex0VoARu2Ty4aK+qSoCWGupOnx\nlurGgpSiJm4mRU0Ic1RVBVu2KPfrOkYIo0MhSlHzSy/G/qqMLiKuk6ImhDnavl0ZwHjMGPDwUDuN\n2bncuxu53v1wqK7FL6NY7TjCjDSpqCUlJeHr64uPjw8xMTENns/KymLChAk4OjryxhtvNGtdIUQj\npOnRpEN1TZBp0gQprjPZ+1Gv1xMdHU1ycjJubm6EhIQQGRmJr6+vcZk+ffrw1ltv8eVNQ9c0ZV0h\nxHWLly4mrziXj77eQT8gevcWcmal3nL5zGOZeGJ9l6IBpahFrt/PqLR8NHoDBhvrHkJMKEwWtbS0\nNLy9vfG8dg2n2bNnEx8fX68w9e3bl759+/L11183e10hxHV5JXncOcGZfp9e5WLvbtQ8E4DnbcZ7\n3L9sfwemMy9FXr0538+ZPmfL8cw5S55Pf7UjCTNgsvmxuLgYjxva9N3d3SkublobdmvWFcJajb7W\nnHZonKfVD2B8WxqNsQlytDRBimvM6uTr5cuXG++HhYURFhamWhYh1FLXTb2uh5+4tYxxnty9OZNR\ne/OJfyJE7TiilVJSUkhJSWnVNkwWNa1WS0FBgXG+qKgIrVbbpI03d90bi5oQ1qh3ZRWeOeeodrAl\na5Sb2nHMXvbIgVR1tcc9/wK9z5Rxob+cpN6Z3bwzs2LFimZvw2TzY0hICDk5OeTn51NdXU1cXBzT\nb9Mjy3DD5SCau64Q1i605CwARwPdqeliVg0pZklnb0vmGHcARu0rMLG0sAYm/9fY2toSGxtLeHg4\ner2eqKgo/Pz8WLt2LRqNhoULF1JaWsrYsWMpKyvDxsaGVatWcfToUZydnRtdVwjRuLqidjhkkMpJ\nOo9DIZ4E78llVFo+KdNGqB1HqKxJfwpGRESQlZVV77FFixYZ77u6ulJYWNjkdYUQjbhyhTFnzgNy\nPK05MoM90GvA53AJXa5Uc7Wbg9qRhIpkRBEhzMW2bXSp1ZM37PYjz4v6yly6kjvcFXudXkYXEVLU\nhDAb1y4IemicND0216FrzbUyuoiQoiaEOTAY4NrgBdL02Hx156sF7C9EozeYWFpYMilqQpiDgweh\npISzXbtQOKSP2mk6nZJBvTjXvzs9LlXidfyM2nGEiqSoCWEOru2lpQ3sJ6OItIRGY+wxKtdYs25S\n1IQwB9eOp+11k/ELW6ruwqEBcr6aVZOiJoTaSkrgwAHo2pX0/r3VTtNp1Y0u4pGnjC4irJMUNSHU\nVnd1iylTqLazVTdLJyajiwiQoiaE+uouCPrQQ+rmsAB1PUela7/1kqImhJquXIHkZOX+gw+qm8UC\nHBlbf3QRYX2kqAmhpm+/haoqGDcOBgxQO02nV96zKyevjS7in16kdhyhAilqQqhJmh7b3KHQuiZI\nOa5mjaSoCaEWvf56JxG5JFObqTuuFrC/ABsZXcTqSFETQi3790NpKQwaBAEBaqexGKc8XDgzoAfd\nL1fhe+EnteOIDiZFTQi13Nj0KKOItB2Nxjgo9PhiGTLL2khRE0It10YRkeNpbS9jnBcA469ddFVY\nDylqQqghPx8OHQJnZwgLUzuNxcnxH8AVJwcGlVVAdrbacUQHkqImhBrq9tLuvx+6dFE3iwXS29lw\nJNhDman7rIVVkKImhBqk6bHdGa9LJ0XNqjSpqCUlJeHr64uPjw8xMTGNLrNkyRK8vb0JDAwkPT3d\n+Pgrr7zCiBEjGDVqFI8//jjV1XKWv7Byly9DSgrY2MDUqWqnsViZwR7oNBrYuRMuXlQ7juggdqYW\n0Ov1REdHk5ycjJubGyEhIURGRuLr62tcJjExkRMnTpCdnc3evXtZvHgxqamp5Ofn8+6773Ls2DEc\nHByYNWsWcXFxzJ07t13flBDmYvHSxeSV5NV7bFLhaf5QXc2Rvi78JnpOvecyj2XiiVz5ui1cce7C\nkX69CDxzARIT4bHH1I4kOoDJopaWloa3tzeensp/tNmzZxMfH1+vqMXHxxsLVWhoKJcuXaK0tJQe\nPXrg4OBARUUFNjY2XLlyBTc3t3Z6K0KYn7ySPDyfqF+k7nv9BADHHhqO54z6z+1ftr/DslmDVLd+\nSlGLj5eiZiVMNj8WFxfj4eFhnHd3d6e4uPi2y2i1WoqLi+nVqxcvvPACgwYNQqvV4uLiwn333deG\n8YXoXGx0ekbuV4Zvygj1UjeMFUitu+hqYiJcvapuGNEhTO6ptcbJkyd58803yc/Pp2fPnsycOZP/\n/ve/PHaLv5iWL19uvB8WFkaYdHUWFsYn8xROFdWUePTijFtPteNYvNPO3ZTRWg4fVo5j3n+/2pHE\nbaSkpJCSktKqbZgsalqtloKC6wODFhUVodVqGyxTWFjYYJkdO3YwceJEevdWrub7yCOPsGfPniYV\nNSEsUWBqHgAZoXLcrMM8/LBS1L78Uoqambt5Z2bFihXN3obJ5seQkBBycnLIz8+nurqauLg4pt80\n+Or06dP58MMPAUhNTcXFxQVXV1eGDx9OamoqVVVVGAwGkpOT8fPza3ZIISyCwcDovXkApEvTY8d5\n+GHldtMmZRBpYdFM7qnZ2toSGxtLeHg4er2eqKgo/Pz8WLt2LRqNhoULFzJ16lQSEhIYNmwYTk5O\nrFu3DoDRo0czd+5cgoODsbW1ZcyYMSxcuLDd35QQ5sjj5Hl6n6vgp97dyPfup3Yc6zFmDHh4QGGh\nMoj0uHFqJxLtqEnH1CIiIsjKyqr32KJFi+rNx8bGNrrusmXLWLZsWQvjCWE56vbSMsZ5YrCRAYw7\njEYDkZEQG6s0QUpRs2gyoogQHSRwbz4gx9NUUdcEGR+vbg7R7qSoCdEB+pSW4ZF7nqqu9mSN0ppe\nQbStu+4CFxc4ehSOH1c7jWhHUtSE6ACj0pS9tCNBHujsbVVOY4Xs7WHaNOW+7K1ZNClqQnSAwLrj\nadL0qB5pgrQKUtSEaGdOl6vwPnKKWhsNR8YOUjuO9aq7zM+ePVBaqnYa0U6kqAnRzkbty8dWbyBr\nlBtXnOW3BdEKAAAclElEQVTaaarp3h3uvRcMBrkcjQWToiZEOwvakwvAD3cMVjmJMDZBfvGFujlE\nu5GiJkQ76lqjw++HIvQaSB/vpXYcERmpXMfum2/g0iW104h2IEVNiHY07tRZ7HV6TvgN4HKvbmrH\nEf37w6RJUFMjTZAWSoqaEO3oziKlQ4I0PZqRmTOV2//9T90col1IUROivVRWEnLqHAAHJ0hRMxsz\nZii3SUlQXq5uFtHmpKgJ0V62bMGxtpa8Yf242M9Z7TSijlYLd9wBVVXKxUOFRZGiJkR7uda8JXtp\nZuhnP1NuP/tM3RyizUlRE6I9VFcbOyL8cIeXullEQ3VFbfNmqKxUN4toU1LUhGgP27bBpUvk9nTm\njNZF7TTiZl5eEBwMFRWwdavaaUQbkqImRHu41vS4W+uqchBxS9IEaZGkqAnR1nQ65WKUwG53KWpm\nq66offWV0lwsLIIUNSHa2vbtcO4c+PiQ21N6PZotHx8ICFBGFklOVjuNaCNS1IRoa3Fxyu3s2aDR\nqJtF3F7d3trGjermEG3GrikLJSUl8dxzz6HX64mKiuLFF19ssMySJUtITEzEycmJ999/n8DAQAAu\nXbrEggULOHLkCDY2Nrz33nuEhoa27bsQwlxUV8Pnnyv3Z82CFXvVzWPlMjMziZgVccvnPS6X8y5Q\nvv5jHi0rRusxhDVvrum4gKLNmSxqer2e6OhokpOTcXNzIyQkhMjISHx9fY3LJCYmcuLECbKzs9m7\ndy+LFy8mNTUVgGeffZapU6fy6aefotPpuHLlSvu9GyHUtnUr/PST0qzl7692GqtXqavE84nbX5i1\nMOsYHrnneWC4hk05eR0TTLQbk82PaWlpeHt74+npib29PbNnzyb+pivHxsfHM3fuXABCQ0O5dOkS\npaWlXL58mZ07dzJ//nwA7Ozs6NGjRzu8DSHMxCefKLezZ6ubQzTZvklDARi784TKSURbMFnUiouL\n8fDwMM67u7tTXFx822W0Wi3FxcXk5ubSt29f5s+fT1BQEAsXLqRSTnQUlqqy0tjrkVmz1M0immz/\ntaI2Oi2fLjqdymlEazXpmFpL6XQ6Dh48yNtvv83YsWN57rnnePXVV1mxYkWjyy9fvtx4PywsjLCw\nsPaMJ0TbSkxUBsgdOxaGDlU7jWii867dOTm8P0OyzjC+5KzacaxaSkoKKSkprdqGyaKm1WopKCgw\nzhcVFaHVahssU1hY2OgyHh4ejB07FoCZM2cSExNzy9e6sagJ0enUNT3KXlqnk3bXMIZknWFywWm1\no1i1m3dmbrUDdDsmmx9DQkLIyckhPz+f6upq4uLimD59er1lpk+fzocffghAamoqLi4uuLq64urq\nioeHB8ePHwcgOTkZfzl4LixRefn1i07+4hfqZhHNdmDiEPQ2GsaePqt09BGdlsk9NVtbW2JjYwkP\nDzd26ffz82Pt2rVoNBoWLlzI1KlTSUhIYNiwYTg5ObFu3Trj+qtXr+bxxx+npqaGIUOG1HtOCIvx\n9dfKMbUJE2DQILXTiGa63Lsbx0cOxPdQCXzxBVzr3CY6nyYdU4uIiCArK6veY4sWLao3Hxsb2+i6\no0ePZt++fS2MJ0QnceMJ16JT2jdpqFLU4uKkqHViMqKIEK114QIkJICNDcycqXYa0UI/3DEYnUaj\nDJl15ozacUQLSVETorU++QRqamDKFBg4UO00ooUqejhyYEBfqK2FTz9VO45oISlqQrTWtU5SXBuA\nQHRe2wcNUO589JG6QUSLSVETojWOH4fUVHB2hocfVjuNaKXvta7QvTvs3QvHjqkdR7SAFDUhWqNu\nL+3nP4du3dTNIlrtqp3t9VMyPvhA3TCiRaSoCdFSev31ZipperQc8+Yptx99pBxfE52KFDUhWuq7\n76CgQDkv7a671E4j2sqdd8KQIVBcDNu2qZ1GNJMUNSFaqq7pcc4cpTu/sAwazfW9tfffVzWKaL52\nHdBYCEuzeOli8kry6KKrZcOm7XQDog7uoPgWF6LMPJaJJ7e/npcwH3UXFXWtqOQDoOqTOB6rLOWK\nfeM/lV5uXnJRUTMjRU2IZsgrycPzCU9CduTQTVfLyeH9sfu1/y3L1v5l+zs0n2idGy8qmpWfzfAj\np3hYW8Pu8MavupD3cV4HphNNIW0mQrTAHduUQbq/v9tH5SSivaTeo/zb1v1bi85BipoQzdTn9GX8\n0ouosbdl/6QhascR7eTAhMFc7WKH99HT9D11We04oomkqAnRTHd+cwwbAxycMJgr3R3VjiPaydVu\nDhycMBiAiclZJpYW5kKKmhDNYKvXM/Fb5Qfuuwg/ldOI9rZ7ii8AE785ho1Or3Ia0RRS1IRohvEl\nZ+l5sZISDxdy/AeoHUe0s+wRAyjx6EXPi5WMTstTO45oAilqQjTD1BOFAOwK91POZxKWTaPhuweU\nPfLJiT+qHEY0hRQ1IZoqN5fg0vPU2Nvy/T3eaqcRHSQ1zJtqB1v8MorpX/yT2nGECVLUhGiqd98F\nYP+dQ6SDiBWpdO5C2l3DAJi0RUbuN3dS1IRoipoaeO89AHbeLx1ErM13D/gDMCE5C7tqncppxO00\nqaglJSXh6+uLj48PMTExjS6zZMkSvL29CQwMJD09vd5zer2eoKAgpk+f3vrEQqhh0yYoLSW/hxMn\n/FzVTiM6WL53P/KH9cW57CrBu0+qHUfchsmiptfriY6OZsuWLWRmZrJhwwaO3XTxvMTERE6cOEF2\ndjZr165l8eLF9Z5ftWoV/v7+bZtciI70r38BkDDEQzqIWKkdEcpv2F3SYcSsmSxqaWlpeHt74+np\nib29PbNnzyY+Pr7eMvHx8cy9dj2p0NBQLl26RGlpKQBFRUUkJCSwYMGCdogvRAc4fBiSk6FbN5K9\n3NROI1Sy766hVHazZ9ixUrS559WOI27BZFErLi7Gw8PDOO/u7k5xcfFtl9FqtcZlli5dyt///nc0\n8tet6KzefFO5ffJJyh3s1c0iVFPtaE/qtbE+7/n6iMppxK206yj9mzdvxtXVlcDAQFJSUjAYDLdd\nfvny5cb7YWFhhIWFtWc8IUwrLYX165Umx2efhT9Eq51IqGjbQyOZnJBJ6PZs4p8IUTuOxUlJSSEl\nJaVV2zBZ1LRaLQUFBcb5oqIitFptg2UKCwsbLPPZZ5+xadMmEhISqKyspKysjLlz5/Jh3cUVb3Jj\nURPCLPzzn1BdDZGRMGyY2mmEys649SQj1IsxqXmEbc7kMP3VjmRRbt6ZWbFiRbO3YbL5MSQkhJyc\nHPLz86muriYuLq5BL8bp06cbC1VqaiouLi64urqycuVKCgoKOHnyJHFxcdxzzz23LGhCmJ3KSmMH\nEZ5/Xt0swmx88/AoACYnHqWLTrr3mxuTe2q2trbExsYSHh6OXq8nKioKPz8/1q5di0ajYeHChUyd\nOpWEhASGDRuGk5MT69at64jsQrSv9evh7FkICoJJk9ROI8zECT9XTvr0Z8jxM0zJK1E7jrhJk46p\nRUREkJVV/9ILixYtqjcfGxt7221MnjyZyZMnNzOeECoxGK53EHn+eenGL67TaPhmxigWxXzLI8fz\noLYWbG3VTiWukRFFhGjM1q1w9Ci4ucHPf652GmFmfhjvxVnX7riVVyon5guz0a69H4Uwd4uXLiav\nJK/B4yt37CcIeK+PExvnXD+GnHksE088Oy6gMEsGWxuSIwOY/c4eeO01mDFD7UjiGilqwqrlleTh\n+UT9IjX06GmCNp6nsps9h383AU/nLsbn9i/b39ERhZnac+9wpq1Lo/uePbBnD0yYoHYkgTQ/CtHA\ng3EHANj24Eiu3FDQhLjR1a72fD1skDLz5z+rG0YYSVET4gZDjpXin15MZVd7vo0MUDuOMHOf+3hC\n9+6wZYuytyZUJ0VNiBs8uEHZS9v+0Ei5ZpowqayLgzLSDMDLL6sbRgBS1IQwGnyslBE/FFHV1Z5v\np8temmii55+HHj3g22/hu+/UTmP1pKgJcc2DcQcB2D5tBBU9ZC9NNFGvXtdHnJG9NdVJURMC8Dp+\nhpEHC6lytDMOgyREkz33HLi4QEoKbN+udhqrJkVNCIOByI/2AZAie2miJXr2hBdeUO6//LIyIo1Q\nhRQ1YfVG7i/EP6OYCicHts4YrXYc0VktWQK9e8POnUpvSKEKOflaWDVbvZ6Z65S9tIRZQbKXJpol\nMzOTiFkRxvmfufflVxcukD9rJk+FT6DWpv5+g5ebF2veXNPRMa2KFDVh1aaeKGJg0U+UDuzB9mkj\n1I4jOplKXWW9EWnSa9w58/RpPE9fZk7vCrY/OLLe8nkf53VwQusjzY/Cev30E09k5gDw+S9DqbWX\nkdZF6+jsbfk0ajwAD63fj9PlKpUTWR8pasJ6/eUv9KyuIWvkQNLHe6mdRliIQ+M8OTpai1NFNdP/\nK2OFdjQpasI6nTgBq1ejBz6NukOulybajkbDpwvuoNZGw11JP+KWd0HtRFZFipqwPgaDMrRRTQ3J\nXm4UDu2rdiJhYUo8e/NdhB82egO/+M/30sW/A0lRE9ZnwwbYvBl69mRdgI/aaYSF+uqxsVQ4d8Ev\no5ixO0+oHcdqNKmoJSUl4evri4+PDzExMY0us2TJEry9vQkMDCQ9PR2AoqIi7rnnHkaMGEFAQACr\nV69uu+RCtMTZs8r5RABvvMGFrnJpGdE+Kno48sXccQA8unY33X+qVDmRdTBZ1PR6PdHR0WzZsoXM\nzEw2bNjAsWPH6i2TmJjIiRMnyM7OZu3atSxevBgAOzs73njjDTIzM/n+++95++23G6wrRId69lk4\nfx7uuw/mz1c7jbBwO+/35ehoLc5lV3l0zS6141gFk0UtLS0Nb29vPD09sbe3Z/bs2cTHx9dbJj4+\nnrlz5wIQGhrKpUuXKC0tZcCAAQQGBgLg7OyMn58fxcXF7fA2hGiCr75Smh67dYN33pHOIaL9aTR8\nHH0XVV3tCd6Ty6TC02onsngmi1pxcTEeHh7GeXd39waF6eZltFptg2Xy8vJIT08nNDS0tZmFaL5L\nl+DXv1bur1wJgwerm0dYjfOu3fnfL5XfvacPHlWawEW76ZCOIuXl5cycOZNVq1bh7OzcES8pxHUG\nA0RHQ3ExjB+v3BeiA+28349jo9xwuVoj3792ZnKYLK1WS0FBgXG+qKgIrVbbYJnCwsJGl9HpdMyc\nOZM5c+YQGRl529davny58X5YWBhhYWFNeQ9C3N5//gMff6w0O773HtjKyCGiYxlsNHwYfRd/fOpT\num7cCA88AL/8pdqxzE5KSgopKSmt2obJohYSEkJOTg75+fkMHDiQuLg4NmzYUG+Z6dOn8/bbbzNr\n1ixSU1NxcXHB1dUVgCeffBJ/f3+erbvk+W3cWNSEaBMZGfDMM8r9NWvAz0/dPMJqnR/Qg3+O8eOF\nfUeUpvDAQGUSRjfvzKxYsaLZ2zDZ/Ghra0tsbCzh4eGMGDGC2bNn4+fnx9q1a3nnnXcAmDp1KoMH\nD2bYsGEsWrSIf/3rXwDs3r2b9evXs23bNsaMGUNQUBBJSUnNDilEi1y+DD//OVRVQVQUzJmjdiJh\n5b4ZrFW+i1VV8LOfwU8/qR3J4jRplP6IiAiysrLqPbZo0aJ687GxsQ3WmzhxIrW1ta2IJ0QLGQyw\ncCFkZ0NAALz1ltqJhFDExsIPP8DBgzB3Lnz5JdjIOBhtRS49IyzK4qWLySvJY0ZWHosysrhiZ8sS\nbU+Kfjmj0eUzj2XiiWejzwnRLhwd4bPPIChIOc0kJgZ+9zu1U1kMKWrCouSV5PGIl44FnyotC+uX\nhmE7aegty9b+ZTKKulDB4MFK56UHH4T/9/9g+HB45BG1U1kE2ecVFiXgzAXmv7EdGwN8Pm8c+ycN\nVTuSEI2bNg3+8hfQ6+HRR2H7drUTWQQpasJyZGbyp90/YK/Ts32qP1seGa12IiFu7/e/h6efhupq\niIxUjrWJVpGiJixDYSFERNC9RscP47345FcTZBgsYf40Gli9GmbNgrIyiIiAnBy1U3VqckxNdH7Z\n2coAxUVFZPZ14T8v3IPBVv5eE+YnMzOTiFkRDR63q9WzwrUPwaVnOB04it9NHssp5254uXmx5s01\nKiTtvKSoic7t8GGYMgVKS+GOO3jZtSt9usjXWpinSl0lnk803m3pg1+40+uPmxly/Az/2LOf1Sum\nsnt3XscGtADy56zovNLSYPJkpaDdey9s3Uq5g73aqYRokatd7fnHn6fy42gtPX+q5De/28TIsxfU\njtXpyJ+0wqzVnXd2s3ElZ3gp9RDddLXscevPKy4aaqJmynlnolO72s2B2D9F8OTr2wjek8vKHQeU\nk7MffljtaJ2GFDVh1vJK8uo112hq9Ty04QDTdim9xFLDhvHRkjDc7JRGBznvTHR2Ontb3l12L+Vr\ndzM56Ufl/LU//hH+9CcZjLsJpPlRdBpOl6t45s9JTNv4A3obDZ/PG8e6pXejt5OvsbAsBlsb/vvr\nO1k30lvpIfnnP0N4uNLULm5Lfg1EpzA8o5g/LP2cET8UUdbDkVUrprLlZ4HSbV9YLo2GT/yHwDff\ngKsrbNumjOovJ2nflhQ1Ydacq2uYs3oHz/9xM33OlpPr04+/vvkIx0ZrTa8shCW45x7lpOzJk+H0\naWX+V7+CC9KJpDFS1IR5Mhhg40beSdrFnd9mUWNnQ/zjY/n7K9O52E+uni6szMCB8O23sHw52NvD\nv/+tjBf54YfK/xVhJB1FhPlJTlYGeU1NpTeQ7T+Aj6LvotTdRe1kQnSoxk7Wdr93HM8cOMros+dg\n3jwyX3iWD0cMI6N/b7y0g63+ZG0pasJ87NmjFLO6Ywb9+rF6UD+O/nEiBhs5diasz61O1v6nwZ/Q\nlGxmvpfKiHM/EbNjP9n+A/j3mQvKnpsVH2uW5kehrspKeP99GDcOJk5UCpqLC/z1r3DyJAlDPaSg\nCXEzjYa9d/vwx7Wz+fKJECqcu+B99DQxO/bD+PGwbh1cuaJ2SlXInproeAaDMhrIJ58oBe3iReXx\nXr3gqafgN79RCpsQ4raqujmQ+IsxbH9wBHd/fYR7N6bTPS1N+f+1dCk88QTMmwdjx1rN3psUNdEx\nqqshNZXk56IJyMqm/5Uq41NZvXvw9dBB7PAYQHX2flg02/icjBAihGlKcQti3ZWexD/4OKxdC3v3\nwttvK5O7uzIqyYwZMGmS0tnEQjWpqCUlJfHcc8+h1+uJiorixRdfbLDMkiVLSExMxMnJiffff5/A\nwMAmryssUGUlZGTAd98p59fs3AlXrnDvtacv9nHi4ITB7A0bRr53fwAGNrIZGSFEiKa7amcH8+cr\nU0YG/Oc/8L//QVERxMYqk5MTTJignCIQFgbBweDoqHb0NmOyqOn1eqKjo0lOTsbNzY2QkBAiIyPx\n9fU1LpOYmMiJEyfIzs5m7969LF68mNTU1CatK1onJSWFsLAw9QLU1kJ+PmRlKVNGBhw4AEePKs/d\naMQI/ldTTvaCQPJ8+qt6rKzkcAluAW6qvX5nJZ9by3TU59ZYb0nNxJF4X/BgYvEZxpecwfNyhXJC\n9zffKAvY2oKfH4wZo0x+fuDjA56enXJYLpNFLS0tDW9vbzw9lSag2bNnEx8fX68wxcfHM3fuXABC\nQ0O5dOkSpaWl5ObmmlxXtE67FTWDQblo4fnzytA8Z84oU0kJFBQoU2EhNdnZ2N9cvIBaDRT0dOZY\n756ku/bhUL/eXOzahcxjmUz1dW37vM0kP84tI59by3TU53ar3pJXgW3Xph4Xr+CdeQqfw6fw2l2A\nV/kVOHJEmT766PpK9vYwZIhS3NzdwcNDue3fH/r1uz716GFWx+tMFrXi4mI8PDyM8+7u7qSlpZlc\npri4uEnr1nPgQHOyt5/mnMxoatm652++bez52016PbqaGnTV1aDXK5PBgC4zk6sbNih7RXVTTQ3U\n1mKn12Or1yvHs6qr4epVZaqqUpoH66bycmUqK+NsXi6OlVfoVqPDtgkfgz1wsXc3SrUulGp7UjKo\nFwXD+lE4uA81N1zXrMe1SZoThVDX5V7dOHDnUA7cOZSEggSCho/H61IZQy+WMfSny2jLr6Atq6Bf\n5dXrLTC3Y2MDPXsqnbt69gRnZ6WJs+7W0RG6dlVuHR3BweH6ZG+vTHZ21ydb2+tTC7RLRxFDS89w\nHzu2bYNYGDsa/oPZAV0++6zNXqPfDferutpT4dyFyy5dKevZlbKejlzu1Y0L/Zy50NeZC/2cWffW\nNu5/fWabvb4QouNU6ioZ8MshVAGZ16Y6DlU19Dt1mV7nKuh1vpxe5yqo2JqFV9du9LxaTc+rNfS8\nWk1XXa3Sg7muF7PaDCZ8//33hvvvv984/8orrxheffXVesssWrTIEBcXZ5wfPny44fTp001atw4g\nk0wyySSTTPWm5jK5pxYSEkJOTg75+fkMHDiQuLg4NmzYUG+Z6dOn8/bbbzNr1ixSU1NxcXHB1dWV\nvn37mly3jkHGLxNCCNFKJouara0tsbGxhIeHG7vl+/n5sXbtWjQaDQsXLmTq1KkkJCQwbNgwnJyc\nWLdu3W3XFUIIIdqDxiC7SEIIISyE2Yz9uGLFCtzd3QkKCiIoKIikpCS1I5m1pKQkfH198fHxISYm\nRu04nYaXlxejR49mzJgxjBs3Tu04Zi0qKgpXV1dGjRplfOzixYuEh4czfPhw7r//fi5duqRiQvPU\n2Ocmv2+mFRUVcc899zBixAgCAgJYvXo10PzvnNnsqa1YsYLu3bvz/PPPqx3F7On1enx8fOqd1B4X\nFyfn/zXBkCFDOHDgAL169VI7itnbtWsXzs7OzJ07l0OHDgHw4osv0qdPH377298SExPDxYsXefXV\nV1VOal4a+9zk982006dPc/r0aQIDAykvLyc4OJj4+HjWrVvXrO+c2eypgXQWaaobT4i3t7c3ntQu\nTDMYDOj1erVjdAp33nlng+IfHx/PvHnzAJg3bx5ffvmlGtHMWmOfG8jvmykDBgwwDq/o7OyMn58f\nRUVFzf7OmVVRi42NJTAwkAULFkizxm3c6mR3YZpGo2HKlCmEhITw7rvvqh2n0zlz5gyursqIMAMG\nDODMmTMqJ+o85Pet6fLy8khPT2f8+PGUlpY26zvXoUVtypQpjBo1yjgFBAQwatQovvrqK5566ilO\nnjxJeno6AwYMkN100S52797NwYMHSUhI4O2332bXrl1qR+rUNGY0PJI5k9+3pisvL2fmzJmsWrUK\nZ2fnBt8xU9+5Dr30zDd1A2ia8Ktf/YqHHnqondN0XlqtloKCAuN8UVERWq1WxUSdx8CByrUA+vXr\nx4wZM0hLS+POO+9UOVXn4erqavzL+fTp0/Tv31/tSJ1Cv37Xx+qR37db0+l0zJw5kzlz5hAZGQk0\n/ztnNs2Pp0+fNt7//PPPGTlypIppzNuNJ8RXV1cTFxfH9OnT1Y5l9q5cuUJ5eTkAFRUVbN26Vb5n\nJhgMhnrHgqZPn877778PwAcffGD84RH13fy5ye9b0zz55JP4+/vz7LPPGh9r9neu2WOQtJM5c+YY\nAgICDKNHjzZERkYaTp8+rXYks5aYmGjw8fExDBs2zPDKK6+oHadTOHnypGH06NGGwMBAw8iRI+Vz\nM+HRRx81DBw40ODg4GDw8PAwvPfee4YLFy4Y7r33XoOPj49hypQphosXL6od0+w09rnJ75tpu3bt\nMtjY2Bj/j44ZM8aQmJhoOH/+fLO+c2bTpV8IIYRoLbNpfhRCCCFaS4qaEEIIiyFFTQghhMWQoiaE\nEMJiSFETQghhMaSoCSGEsBhS1IQQQlgMKWpCCCEsxv8Hgw6nRYznWdYAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure(figsize=(7, 4),facecolor='white')\n", "data = norm.rvs(10.0, 2.5, size=5000)\n", "mu, std = norm.fit(data)\n", "plt.hist(data, bins=25, normed=True, alpha=0.6, color='g')\n", "xmin, xmax = plt.xlim()\n", "x = np.linspace(xmin, xmax, 100)\n", "p = norm.pdf(x, mu, std)\n", "plt.plot(x, p, 'r', linewidth=2)\n", "title = r\"$\\mu = %.2f, \\, \\sigma = %.2f$\" % (mu, std)\n", "plt.title(title,size=16)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "ExecuteTime": { "end_time": "2019-06-07T08:36:49.566655Z", "start_time": "2019-06-07T08:36:49.550926Z" }, "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
abc
0000
1111
2248
33927
441664
\n", "
" ], "text/plain": [ " a b c\n", "0 0 0 0\n", "1 1 1 1\n", "2 2 4 8\n", "3 3 9 27\n", "4 4 16 64" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "df = pd.read_csv('../data/data_write_to_file.txt', sep = '\\t', names = ['a', 'b', 'c'])\n", "df[:5]" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:21:09.150592", "start_time": "2017-05-11T22:21:08.103623" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.plot.line()\n", "plt.yscale('log')\n", "plt.ylabel('$values$', fontsize = 20)\n", "plt.xlabel('$index$', fontsize = 20)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:32:42.105831", "start_time": "2017-05-11T22:32:41.789998" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\ngg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.plot.scatter(x='a', y='b')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:26:59.893837", "start_time": "2017-05-11T22:26:59.528857" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.plot.hexbin(x='a', y='b', gridsize=25)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:28:39.025521", "start_time": "2017-05-11T22:28:38.630099" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df['a'].plot.kde()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:37:06.791001", "start_time": "2017-05-11T22:37:06.226303" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/chengjun/anaconda/lib/python2.7/site-packages/ipykernel/__main__.py:1: FutureWarning: \n", "The default value for 'return_type' will change to 'axes' in a future release.\n", " To use the future behavior now, set return_type='axes'.\n", " To keep the previous behavior and silence this warning, set return_type='dict'.\n", " if __name__ == '__main__':\n" ] }, { "data": { "image/png": "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\nhV8Qz/jrAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "bp = df.boxplot()\n", "plt.yscale('log')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:39:16.120016", "start_time": "2017-05-11T22:39:15.913844" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAENCAYAAAACHGKEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAGkxJREFUeJzt3XGMHdd13/HvT2IoWxFFsXVEGmTCVSIZoQIJNBuxdWSU\nm0hUlAIVBSOF6RiQacSAIYmNEQSFqCIFi8AwTQF2xaIwitZ0SDqSWVUIKiqmSVa2RoWdiiIobilz\nGXGThjLJmgvXlBWxMgqpOv1jZ8nn1Vvue7M7e2fu+32ABWfuu+/NOZjlnn33vJlVRGBmZoPrqtQB\nmJlZWi4EZmYDzoXAzGzAuRCYmQ04FwIzswHnQmBmNuBmLASSrpF0WNIxSSckfaEc3yrprKSXy697\nO57zqKQxSScl3dMxvkbScUmnJD1eT0pmZtYP9XIdgaRrI+ItSVcD3wP+CLgbeDMivjxl7irgSeAO\nYAXwHHBLRISkw8DmiDgiaT+wIyIOzm1KZmbWj56WhiLirXLzmvI5r5f76jJ9A7A3It6JiNPAGLBW\n0jJgUUQcKeftAe6vGriZmc2NngqBpKskHQPOA0VEjJYPbZY0IumrkhaXY8uBMx1PP1eOLQfOdoyf\nLcfMzCyhXt8RvBsRH2ZiqecfS1oHfAX45YhYzUSB+FJ9YZqZWV0W9DM5Iv5O0jeBX4+IFzoe+o/A\ns+X2OeAXOx5bUY5NN/4eknwDJDOzCiKi25L9FfXyqaEPTC77SHo/sB4YKdf8J30M+H65vQ/YKGmh\npJuAm4GXIuI88IaktZIEPAA8c4Vksv3aunVr8hicm/Nzfvl9VdXLO4IPArvLH95XAV+PiG9L2iNp\nNfAucBr4bPkDfFTSU8Ao8DbwUFyO8GFgF/A+YH9EHKgceYudPn06dQi1yTk3cH5tl3t+Vc1YCCLi\nFWBNl/EHrvCcbcC2LuNHgdv6jNHMzGrkK4sT2LRpU+oQapNzbuD82i73/Krq6YKy+SYpmhiXmVmT\nSSLqaBbb3CuKInUItck5N3B+bZd7flW5EJiZDTgvDZmZZcJLQ2ZmVokLQQI5r1PmnBs4v7bLPb+q\nXAjMzAacewRmZplwj8DMzCpxIUgg53XKnHMD59d2uedXlQuBmdmAc4/AzCwT7hGYmVklLgQJ5LxO\nmXNu4PzaLvf8qnIhMDMbcI3tEXzjG99IGsNHPvIRVq5cmTQGM7N+VO0RNLYQLFr08WTHf/vtM/zm\nb65g//7/lCwGM7N+VS0EvfzN4iTefHNvwqM/zTvv1Hf8oigYHh6u7fVTyjk3cH5tl3t+VblHYGY2\n4Bq7NAQp43qa9ev3cujQ0wljMDPrj68jMDOzSlwIEsj5s8w55wbOr+1yz6+qGQuBpGskHZZ0TNIJ\nSV8ox5dIOiTpVUkHJS3ueM6jksYknZR0T8f4GknHJZ2S9Hg9KZmZWT966hFIujYi3pJ0NfA94I+A\n+4AfR8Rjkh4BlkTEFkm3Ak8AdwArgOeAWyIiJB0GNkfEEUn7gR0RcbDL8dwjMDPrU609goh4q9y8\npnzO68AGYHc5vhu4v9y+D9gbEe9ExGlgDFgraRmwKCKOlPP2dDzHzMwS6akQSLpK0jHgPFBExCiw\nNCLGASLiPHBjOX05cKbj6efKseXA2Y7xs+XYwMl5nTLn3MD5tV3u+VXV0wVlEfEu8GFJ1wMHJQ3z\n3rWbOV7L2QQMlds3AKuB4XK/KP+ta/8EFy786FIkk988kxeizHZ/ZGRkTl/P+973/mDuF0XBrl27\nABgaGqKqvq8jkPSvgJ8Cvw8MR8R4uezzfESskrQFiIjYXs4/AGwFXpucU45vBNZFxINdjuEegZlZ\nn2rrEUj6wOQngiS9H1gPHAP2MfFrO8CngGfK7X3ARkkLJd0E3Ay8VC4fvSFprSQBD3Q8x8zMEuml\nR/BB4PmyR/AisC8ivg1sB9ZLehW4C/giQNk/eAoYBfYDD3X8ubGHgZ3AKWAsIg7MZTJtMfnWLkc5\n5wbOr+1yz6+qGXsEEfEKsKbL+AXg7mmesw3Y1mX8KHBb/2GamVldfK+hrtwjMLP28b2GzMysEheC\nBHJep8w5N3B+bZd7flW5EJiZDTj3CLpyj8DM2sc9AjMzq8SFIIGc1ylzzg2cX9vlnl9VLgRmZgPO\nPYKu3CMws/Zxj8DMzCpxIUgg53XKnHMD59d2uedXlQuBmdmAc4+gK/cIzKx93CMwM7NKXAgSyHmd\nMufcwPm1Xe75VeVCYGY24Nwj6Mo9AjNrH/cIzMysEheCBHJep8w5N3B+bZd7flW5EJiZDTj3CLpy\nj8DM2sc9AjMzq8SFIIGc1ylzzg2cX9vlnl9VMxYCSSskfUfSCUmvSPrn5fhWSWclvVx+3dvxnEcl\njUk6KemejvE1ko5LOiXp8XpSMjOzfszYI5C0DFgWESOSrgOOAhuAjwNvRsSXp8xfBTwJ3AGsAJ4D\nbomIkHQY2BwRRyTtB3ZExMEux3SPwMysT7X1CCLifESMlNsXgZPA8snjdnnKBmBvRLwTEaeBMWBt\nWVAWRcSRct4e4P5+AzYzs7nVV49A0hCwGjhcDm2WNCLpq5IWl2PLgTMdTztXji0HznaMn+VyQRko\nOa9T5pwbOL+2yz2/qhb0OrFcFnoa+FxEXJT0FeBPyiWfzwNfAj4zd6FtAobK7RuYqD/D5X5R/lvX\n/gkuXPjRpUgmv3mGh4fnZH9kZGROX8/73vf+YO4XRcGuXbsAGBoaoqqeriOQtAD4C+BbEbGjy+Mr\ngWcj4nZJW4CIiO3lYweArcBrwPMRsaoc3wisi4gHu7yeewRmZn2q+zqCrwGjnUWgXPOf9DHg++X2\nPmCjpIWSbgJuBl6KiPPAG5LWShLwAPBMvwGbmdnc6uXjo3cCnwR+S9Kxjo+KPlZ+FHQEWAf8IUBE\njAJPAaPAfuChuPy242FgJ3AKGIuIA3OeUQtMvrXLUc65gfNru9zzq2rGHkFEfA+4ustD0/4Qj4ht\nwLYu40eB2/oJ0MzM6uV7DXXlHoGZtY/vNWRmZpW4ECSQ8zplzrmB82u73POryoXAzGzAuUfQlXsE\nZtY+7hGYmVklLgQJ5LxOmXNu4PzaLvf8qnIhMDMbcO4RdOUegZm1j3sEZmZWiQtBAjmvU+acGzi/\ntss9v6pcCMzMBpx7BF25R2Bm7eMegZmZVeJCkEDO65Q55wbOr+1yz68qFwIzswHnHkFX7hGYWfu4\nR2BmZpW4ECSQ8zplzrmB82u73POryoXAzGzAuUfQlXsEZtY+7hGYmVklLgQJ5LxOmXNu4PzaLvf8\nqpqxEEhaIek7kk5IekXSH5TjSyQdkvSqpIOSFnc851FJY5JOSrqnY3yNpOOSTkl6vJ6UzMysHzP2\nCCQtA5ZFxIik64CjwAbg08CPI+IxSY8ASyJii6RbgSeAO4AVwHPALRERkg4DmyPiiKT9wI6IONjl\nmO4RmJn1qbYeQUScj4iRcvsicJKJH/AbgN3ltN3A/eX2fcDeiHgnIk4DY8DasqAsiogj5bw9Hc8x\nM7NE+uoRSBoCVgMvAksjYhwmigVwYzltOXCm42nnyrHlwNmO8bPl2MDJeZ0y59zA+bVd7vlVtaDX\nieWy0NPA5yLi4sTyzc+Y47WcTcBQuX0DE/VnuNwvyn/r2j/BhQs/uhTJ5DfP8PDwnOyPjIzM6et5\n3/veH8z9oijYtWsXAENDQ1TV03UEkhYAfwF8KyJ2lGMngeGIGC+XfZ6PiFWStgAREdvLeQeArcBr\nk3PK8Y3Auoh4sMvx3CMwM+tT3dcRfA0YnSwCpX1M/NoO8CngmY7xjZIWSroJuBl4qVw+ekPSWkkC\nHuh4jpmZJdLLx0fvBD4J/JakY5JelnQvsB1YL+lV4C7giwARMQo8BYwC+4GH4vLbjoeBncApYCwi\nDsx1Qm0w+dYuRznnBs6v7XLPr6oZewQR8T3g6mkevnua52wDtnUZPwrc1k+AZmZWL99rqCv3CMys\nfXyvITMzq8SFIIGc1ylzzg2cX9vlnl9VLgRmZgPOPYKu3CMws/Zxj8DMzCpxIUgg53XKnHMD59d2\nuedXlQuBmdmAc4+gK/cIzKx93CMwM7NKXAgSyHmdMufcwPm1Xe75VeVCYGY24Nwj6Mo9AjNrH/cI\nzMysEheCBHJep8w5N3B+bZd7flW5EJiZDTj3CLpyj8DM2sc9AjMzq8SFIIGc1ylzzg2cX9vlnl9V\nLgRmZgPOPYKu3CMws/Zxj8DMzCpxIUgg53XKnHMD59d2uedX1YyFQNJOSeOSjneMbZV0VtLL5de9\nHY89KmlM0klJ93SMr5F0XNIpSY/PfSpmZlbFjD0CSR8FLgJ7IuL2cmwr8GZEfHnK3FXAk8AdwArg\nOeCWiAhJh4HNEXFE0n5gR0QcnOaY7hGYmfWpth5BRHwXeL3bMbuMbQD2RsQ7EXEaGAPWSloGLIqI\nI+W8PcD9/QZrZmZzbzY9gs2SRiR9VdLicmw5cKZjzrlybDlwtmP8bDk2kHJep8w5N3B+bZd7flUt\nqPi8rwB/Ui75fB74EvCZuQsLYBMwVG7fAKwGhsv9ovy3rv0TXLjwo0uRTH7zDA8Pz8n+yMjInL6e\n973v/cHcL4qCXbt2ATA0NERVPV1HIGkl8Oxkj2C6xyRtASIitpePHQC2Aq8Bz0fEqnJ8I7AuIh6c\n5njuEZiZ9anu6whER0+gXPOf9DHg++X2PmCjpIWSbgJuBl6KiPPAG5LWShLwAPBMv8Gamdnc6+Xj\no08Cfwl8SNIPJH0aeKz8KOgIsA74Q4CIGAWeAkaB/cBDcfktx8PATuAUMBYRB+Y8m5aYfGuXo5xz\nA+fXdrnnV9WMPYKI+L0uw396hfnbgG1dxo8Ct/UVnZmZ1c73GurKPQIzax/fa8jMzCpxIUgg53XK\nnHMD59d2uedXlQuBmdmAc4+gK/cIzKx93CMwM7NKXAgSyHmdMufcwPm1Xe75VVX1XkPZe+GF55i4\nCDqtpUtXcv786dRhmFnG3CPo6mngn5E2hkmiiefIzJrHPQIzM6vEhSCJInUAtcl9Ddb5tVvu+VXl\nQmBmNuDcI+jKPQIzax/3CMzMrBIXgiSK1AHUJvc1WOfXbrnnV5ULgZnZgHOPoCv3CMysfdwjMDOz\nSlwIkihSB1Cb3NdgnV+75Z5fVS4EZmYDzj2CrtwjMLP2cY/AzMwqcSFIokgdQG1yX4N1fu2We35V\nzVgIJO2UNC7peMfYEkmHJL0q6aCkxR2PPSppTNJJSfd0jK+RdFzSKUmPz30qZmZWxYw9AkkfBS4C\neyLi9nJsO/DjiHhM0iPAkojYIulW4AngDmAF8BxwS0SEpMPA5og4Imk/sCMiDk5zTPcILnGPwMx6\nU1uPICK+C7w+ZXgDsLvc3g3cX27fB+yNiHci4jQwBqyVtAxYFBFHynl7Op5jZmYJVe0R3BgR4wAR\ncR64sRxfDpzpmHeuHFsOnO0YP1uODagidQC1yX0N1vm1W+75VTVXf7O4hrWLTcBQuX0DsBoYLveL\n8t+69k9MiWWuX3+kj/nXJP/byUuWLOXP/3wvw8PDwOX/TN73vvfT7hdFwa5duwAYGhqiqp6uI5C0\nEni2o0dwEhiOiPFy2ef5iFglaQsQEbG9nHcA2Aq8NjmnHN8IrIuIB6c5nnsEl4j0cbhPYdYGdV9H\noPJr0j4mfmUH+BTwTMf4RkkLJd0E3Ay8VC4fvSFprSZ+vX2g4zlmZpZQLx8ffRL4S+BDkn4g6dPA\nF4H1kl4F7ir3iYhR4ClgFNgPPBSXf5V8GNgJnALGIuLAXCfTHkXqAGqT+xqs82u33POrasYeQUT8\n3jQP3T3N/G3Ati7jR4Hb+orOzMxq53sNdeUewdQYmvh9YmY/y/caMjOzSlwIkihSB1Cb3NdgnV+7\n5Z5fVS4EZmYDzj2CrtwjmBpDE79PzOxnVe0RzNWVxZa19Fc3AyxdupLz50+nDsMsO14aSqJIHUCf\n/i8T70p6+Xq+j7n9fY2Pv1Z7pjPJfY3Z+Q0mFwIzswHnHkFX7hE0LwZwr8LsynwdgZmZVeJCkESR\nOoAaFakDqFXua8zObzD5U0PWIuk/vbRkyVIuXDifNAazueYeQVfuETQvBmhGHO5TWHO5R2BmZpW4\nECRRpA6gRkXqAGwWcl9Dzz2/qlwIzMwGnHsEXblH0LwYoBlxvI+JK63T8u02rBvfa8hsXkzebiOt\n8fH0936yfHhpKIkidQA1KlIHYLOQ+xp67vlV5XcEZq2U/poKL0/lwz2CrtwjaF4M0Iw4mhADNCMO\nX1PRNL6OwMzMKnEhSKJIHUCNitQB2KwUfcydWJ5K+bVs2VB/2blH0NWsCoGk05L+h6Rjkl4qx5ZI\nOiTpVUkHJS3umP+opDFJJyXdM9vgzSylfv5gUb5/rCgHs+oRSPqfwD+IiNc7xrYDP46IxyQ9AiyJ\niC2SbgWeAO4AVgDPAbdElwDcI+jUjLXg9DFAM+JoQgzQjDiaEIOv6+iUqkegLq+xAdhdbu8G7i+3\n7wP2RsQ7EXEaGAPWzvL4ZjbQ0r8ryeGdyWwLQQD/VdIRSZ8px5ZGxDhARJwHbizHlwNnOp57rhwb\nQEXqAGpUpA7AZqVIHUDNippet339kk6zvY7gzoj4oaRfAA5JepX3vles+N5xEzBUbt8ArAaGy/2i\n/Leu/RNTYpnr1x+Z49ere39yLHU8zPD4oO0zw+O5H79J+51XnM/n8QtgFwDj45MLMf2bs+sIJG0F\nLgKfAYYjYlzSMuD5iFglaQsQEbG9nH8A2BoRh7u8lnsElzRhHbYJMUAz4mhCDNCMOBzDZU2IY6I1\nMK89AknXSrqu3P554B7gFWAfE7/OA3wKeKbc3gdslLRQ0k3AzcBLVY9vZmZzYzY9gqXAdyUdA14E\nno2IQ8B2YH25THQX8EWAiBgFngJGgf3AQ90+MTQYitQB1KhIHYDNSpE6gJoVqQNopMo9goj4WyYW\n7qeOXwDunuY524BtVY9pZmZzz/ca6so9gubFAM2IowkxQDPicAyXNSGOBD0CMzPLgwtBEkXqAGpU\npA7AZqVIHUDNitQBNJILgZnZgHOPoCv3CJoXAzQjjibEAM2IwzFc1oQ43CMwM7OKXAiSKFIHUKMi\ndQA2K0XqAGpWpA6gkVwIzMwGnHsEXblH0LwYoBlxNCEGaEYcjuGyJsThHoGZmVXkQpBEkTqAGhWp\nA7BZKVIHULMidQCN5EJgZjbg3CPoyj2C5sUAzYijCTFAM+JwDJc1IQ73CMzMrCIXgiSK1AHUqEgd\ngM1KkTqAmhWpA2gkFwIzswHnHkFX7hE0LwZoRhxNiAGaEYdjuKwJcbhHYGZmFbkQJFGkDqBGReoA\nbFaK1AHUrEgdQCO5EJiZDTj3CLpyj6B5MUAz4mhCDNCMOBzDZU2Iwz0CMzOraN4LgaR7Jf2VpFOS\nHpnv4zdDkTqAGhWpA7BZKVIHULMidQCNNK+FQNJVwL8Dfhv4NeATkn51PmNohpHUAdQo59wGQe7n\nL/f8qpnvdwRrgbGIeC0i3gb2AhvmOYYG+EnqAGqUc26DIPfzl3t+1cx3IVgOnOnYP1uOmZlZIgtS\nBzCd66//p8mO/fbb/4uf/rTOI5yu88UTO506AJuV06kDqNnp1AE00rx+fFTSPwL+dUTcW+5vASIi\ntk+Zl/pzWGZmrVTl46PzXQiuBl4F7gJ+CLwEfCIiTs5bEGZm9jPmdWkoIv6fpM3AISb6EztdBMzM\n0mrklcVmZjZ/kl1Z3MuFZZL+raQxSSOSVs93jLMxU36S1kn6iaSXy68/ThFnFZJ2ShqXdPwKc9p8\n7q6YX5vPHYCkFZK+I+mEpFck/cE081p3DnvJrc3nT9I1kg5LOlbm+IVp5vV37iJi3r+YKEB/DawE\nfo6Jqzx+dcqc3wG+WW7/Q+DFFLHWmN86YF/qWCvm91FgNXB8msdbe+56zK+1566Mfxmwuty+jom+\nXRb//3rMre3n79ry36uBF4E7Z3vuUr0j6OXCsg3AHoCIOAwslrR0fsOsrNcL5/ru7jdBRHwXeP0K\nU9p87nrJD1p67gAi4nxEjJTbF4GTvPd6nlaewx5zg3afv7fKzWuY+KVz6vdq3+cuVSHo5cKyqXPO\ndZnTVL1eOPeR8q3bNyXdOj+hzYs2n7teZXHuJA0x8e7n8JSHWn8Or5AbtPj8SbpK0jHgPFBExOiU\nKX2fu8ZeUDYAjgK/FBFvSfod4L8AH0ock/Umi3Mn6Tom7rn+ufK352zMkFurz19EvAt8WNL1wCFJ\n6yLihdm8Zqp3BOeAX+rYX1GOTZ3zizPMaaoZ84uIi5Nv8SLiW8DPSfp78xdirdp87maUw7mTtICJ\nH5Rfj4hnukxp7TmcKbcczh9ARPwd8E3g16c81Pe5S1UIjgA3S1opaSGwEdg3Zc4+4AG4dEXyTyJi\nfH7DrGzG/DrX7CStZeKjvBfmN8xZEdOvs7b53E2aNr8Mzh3A14DRiNgxzeNtPodXzK3N50/SByQt\nLrffD6znvbdU7fvcJVkaimkuLJP02YmH4z9ExH5J/0TSXwP/B/h0ilir6CU/4HclPQi8DfwU+Hi6\niPsj6UlgGPj7kn4AbAUWksG5g5nzo8XnDkDSncAngVfKteYA/iUTn3Jr9TnsJTfaff4+COyWJCZ+\ntnw9Ir4925+dvqDMzGzA+U9VmpkNOBcCM7MB50JgZjbgXAjMzAacC4GZWWK93MixY+6vSPpv5Y3n\nRsqL4mbFhcDMLL0/BX67x7l/DDwRER8GPgF8ZbYHdyEwM0us240OJf2ypG9JOiLpBUmTt8H4IXB9\nuX0Dc3DFt68jMDNrAEkrgWcj4vZy/zngsxHxN+UV0Nsi4i5Ji4D/DiwGrgXujohjszm2bzpnZtYw\nkn4e+A3gP5dXEcPE3zYB+DfAVyPi8fIWEn8G/NpsjudCYGbWPFcBr0fEmi6P/QYTtz0hIl6U9D5J\nH4iI/z2bg5mZWXqXbnQYEW8Cfyvpdy89KN1ebp4E7i7HVgHXzKYIgHsEZmbJdd7oEBhn4jf+7wD/\nnokbzS0A9kbE5yX9CrCTiUbxu8C/iIhvz+r4LgRmZoPNS0NmZgPOhcDMbMC5EJiZDTgXAjOzAedC\nYGY24FwIzMwGnAuBmdmAcyEwMxtw/x8re2OjkRejRgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df['c'].diff().hist()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "ExecuteTime": { "end_time": "2017-05-11T22:40:14.418943", "start_time": "2017-05-11T22:40:14.037032" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.plot.hist(stacked=True, bins=20)\n", "# plt.yscale('log')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "> To be a programmer is to develop a carefully managed relationship with error. There's no getting around it. You either make your accommodations with failure, or the work will become intolerable.\n", "\n", "Ellen Ullman (an American computer programmer and author)\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## This is the end.\n", "> Thank you for your attention." ] } ], "metadata": { "celltoolbar": "幻灯片", "kernel_info": { "name": "python3" }, "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.9.7" }, "latex_envs": { "LaTeX_envs_menu_present": true, "autoclose": false, "autocomplete": true, "bibliofile": "biblio.bib", "cite_by": "apalike", "current_citInitial": 1, "eqLabelWithNumbers": true, "eqNumInitial": 0, "hotkeys": { "equation": "Ctrl-E", "itemize": "Ctrl-I" }, "labels_anchors": false, "latex_user_defs": false, "report_style_numbering": false, "user_envs_cfg": false }, "nteract": { "version": "0.15.0" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": false, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": { "height": "48px", "left": "1263px", "top": "0px", "width": "159px" }, "toc_section_display": false, "toc_window_display": false }, "toc_position": { "height": "339px", "left": "1245.99px", "right": "20px", "top": "120px", "width": "196px" } }, "nbformat": 4, "nbformat_minor": 1 }