Skip to content

Commit b4c25a8

Browse files
committed
update
1 parent ea59f11 commit b4c25a8

19 files changed

+67
-63
lines changed

build/doctrees/environment.pickle

0 Bytes
Binary file not shown.

build/doctrees/目录/ch1.doctree

6 Bytes
Binary file not shown.

build/doctrees/目录/ch10.doctree

0 Bytes
Binary file not shown.

build/doctrees/目录/ch4.doctree

0 Bytes
Binary file not shown.

build/doctrees/目录/ch8.doctree

0 Bytes
Binary file not shown.

build/doctrees/目录/ch9.doctree

0 Bytes
Binary file not shown.
118 Bytes
Binary file not shown.

build/html/_sources/目录/参考答案.rst.txt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,10 +137,11 @@ Ex1:口袋妖怪数据集
137137

138138
.. ipython:: python
139139
140-
L_full = [i+' '+j for i in df['Type 1'].unique() for j in (
141-
df['Type 1'].unique().tolist() + [''])]
142-
L_part = [i+' '+j for i, j in zip(df['Type 1'], df['Type 2'
143-
].replace(np.nan, ''))]
140+
L_full = [i+' '+j if j!='' and i!=j else i for i in df[
141+
'Type 1'].unique() for j in (df[
142+
'Type 1'].unique().tolist() + [''])]
143+
L_part = [i+' '+j if not isinstance(j, float) else i for i, j in zip(
144+
df['Type 1'], df['Type 2'])]
144145
res = set(L_full).difference(set(L_part))
145146
len(res) # 太多,不打印了
146147

build/html/searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/html/目录/ch1.html

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -503,56 +503,56 @@ <h3>1. np数组的构造<a class="headerlink" href="#np" title="Permalink to thi
503503
<p>【c】随机矩阵: <code class="docutils literal notranslate"><span class="pre">np.random</span></code></p>
504504
<p>最常用的随机生成函数为 <code class="docutils literal notranslate"><span class="pre">rand,</span> <span class="pre">randn,</span> <span class="pre">randint,</span> <span class="pre">choice</span></code> ,它们分别表示0-1均匀分布的随机数组、标准正态的随机数组、随机整数组和随机列表抽样:</p>
505505
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [38]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">rand</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span> <span class="c1"># 生成服从0-1均匀分布的三个随机数</span>
506-
<span class="gh">Out[38]: </span><span class="go">array([0.70286261, 0.16963837, 0.56005106])</span>
506+
<span class="gh">Out[38]: </span><span class="go">array([0.03413424, 0.48828857, 0.93909505])</span>
507507

508508
<span class="gp">In [39]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">rand</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">3</span><span class="p">)</span> <span class="c1"># 注意这里传入的不是元组,每个维度大小分开输入</span>
509509
<span class="gh">Out[39]: </span><span class="go"></span>
510-
<span class="go">array([[0.10643401, 0.97403626, 0.63344678],</span>
511-
<span class="go"> [0.66536365, 0.23873862, 0.38589388],</span>
512-
<span class="go"> [0.32450925, 0.84379175, 0.50644027]])</span>
510+
<span class="go">array([[0.40180614, 0.52070528, 0.07516936],</span>
511+
<span class="go"> [0.3129269 , 0.56649503, 0.90187759],</span>
512+
<span class="go"> [0.25985401, 0.84108489, 0.58437083]])</span>
513513
</pre></div>
514514
</div>
515515
<p>对于服从区间 <span class="math notranslate nohighlight">\(a\)</span><span class="math notranslate nohighlight">\(b\)</span> 上的均匀分布可以如下生成:</p>
516516
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [40]: </span><span class="n">a</span><span class="p">,</span> <span class="n">b</span> <span class="o">=</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">15</span>
517517

518518
<span class="gp">In [41]: </span><span class="p">(</span><span class="n">b</span> <span class="o">-</span> <span class="n">a</span><span class="p">)</span> <span class="o">*</span> <span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">rand</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span> <span class="o">+</span> <span class="n">a</span>
519-
<span class="gh">Out[41]: </span><span class="go">array([7.58056042, 5.19864132, 6.34440414])</span>
519+
<span class="gh">Out[41]: </span><span class="go">array([ 7.27987558, 12.30878755, 7.69601702])</span>
520520
</pre></div>
521521
</div>
522522
<p>一般的,可以选择已有的库函数:</p>
523523
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [42]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">uniform</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">15</span><span class="p">,</span> <span class="mi">3</span><span class="p">)</span>
524-
<span class="gh">Out[42]: </span><span class="go">array([14.38239745, 9.85351137, 14.81961037])</span>
524+
<span class="gh">Out[42]: </span><span class="go">array([10.18168665, 5.15586065, 5.64472322])</span>
525525
</pre></div>
526526
</div>
527527
<p><code class="docutils literal notranslate"><span class="pre">randn</span></code> 生成了 <span class="math notranslate nohighlight">\(N\rm{(\mathbf{0}, \mathbf{I})}\)</span> 的标准正态分布:</p>
528528
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [43]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
529-
<span class="gh">Out[43]: </span><span class="go">array([ 1.14531973, -0.09760709, 0.75457507])</span>
529+
<span class="gh">Out[43]: </span><span class="go">array([-0.2310242 , 0.50286518, -0.61837552])</span>
530530

531531
<span class="gp">In [44]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span>
532532
<span class="gh">Out[44]: </span><span class="go"></span>
533-
<span class="go">array([[-2.5879568 , -0.08810583],</span>
534-
<span class="go"> [-1.52652138, 0.74351561]])</span>
533+
<span class="go">array([[ 0.31280442, -0.34704761],</span>
534+
<span class="go"> [ 0.22871911, -1.50652482]])</span>
535535
</pre></div>
536536
</div>
537537
<p>对于服从方差为 <span class="math notranslate nohighlight">\(\sigma^2\)</span> 均值为 <span class="math notranslate nohighlight">\(\mu\)</span> 的一元正态分布可以如下生成:</p>
538538
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [45]: </span><span class="n">sigma</span><span class="p">,</span> <span class="n">mu</span> <span class="o">=</span> <span class="mf">2.5</span><span class="p">,</span> <span class="mi">3</span>
539539

540540
<span class="gp">In [46]: </span><span class="n">mu</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span> <span class="o">*</span> <span class="n">sigma</span>
541-
<span class="gh">Out[46]: </span><span class="go">array([-0.34486892, 7.77967389, 2.7578818 ])</span>
541+
<span class="gh">Out[46]: </span><span class="go">array([ 3.10129476, -1.66257161, 3.7335879 ])</span>
542542
</pre></div>
543543
</div>
544544
<p>同样的,也可选择从已有函数生成:</p>
545545
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [47]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">normal</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mf">2.5</span><span class="p">,</span> <span class="mi">3</span><span class="p">)</span>
546-
<span class="gh">Out[47]: </span><span class="go">array([5.89785395, 4.75559493, 3.90674484])</span>
546+
<span class="gh">Out[47]: </span><span class="go">array([2.18487392, 6.74826945, 3.76160619])</span>
547547
</pre></div>
548548
</div>
549549
<p><code class="docutils literal notranslate"><span class="pre">randint</span></code> 可以指定生成随机整数的最小值最大值(不包含)和维度大小:</p>
550550
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [48]: </span><span class="n">low</span><span class="p">,</span> <span class="n">high</span><span class="p">,</span> <span class="n">size</span> <span class="o">=</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">15</span><span class="p">,</span> <span class="p">(</span><span class="mi">2</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span> <span class="c1"># 生成5到14的随机整数</span>
551551

552552
<span class="gp">In [49]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randint</span><span class="p">(</span><span class="n">low</span><span class="p">,</span> <span class="n">high</span><span class="p">,</span> <span class="n">size</span><span class="p">)</span>
553553
<span class="gh">Out[49]: </span><span class="go"></span>
554-
<span class="go">array([[ 8, 11],</span>
555-
<span class="go"> [ 8, 11]])</span>
554+
<span class="go">array([[14, 8],</span>
555+
<span class="go"> [ 6, 9]])</span>
556556
</pre></div>
557557
</div>
558558
<p><code class="docutils literal notranslate"><span class="pre">choice</span></code> 可以从给定的列表中,以一定概率和方式抽取结果,当不指定概率时为均匀采样,默认抽取方式为有放回抽样:</p>
@@ -563,14 +563,14 @@ <h3>1. np数组的构造<a class="headerlink" href="#np" title="Permalink to thi
563563

564564
<span class="gp">In [52]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">choice</span><span class="p">(</span><span class="n">my_list</span><span class="p">,</span> <span class="p">(</span><span class="mi">3</span><span class="p">,</span><span class="mi">3</span><span class="p">))</span>
565565
<span class="gh">Out[52]: </span><span class="go"></span>
566-
<span class="go">array([[&#39;d&#39;, &#39;a&#39;, &#39;c&#39;],</span>
567-
<span class="go"> [&#39;a&#39;, &#39;c&#39;, &#39;c&#39;],</span>
568-
<span class="go"> [&#39;b&#39;, &#39;d&#39;, &#39;c&#39;]], dtype=&#39;&lt;U1&#39;)</span>
566+
<span class="go">array([[&#39;c&#39;, &#39;b&#39;, &#39;d&#39;],</span>
567+
<span class="go"> [&#39;a&#39;, &#39;b&#39;, &#39;a&#39;],</span>
568+
<span class="go"> [&#39;d&#39;, &#39;a&#39;, &#39;a&#39;]], dtype=&#39;&lt;U1&#39;)</span>
569569
</pre></div>
570570
</div>
571571
<p>当返回的元素个数与原列表相同时,不放回抽样等价于使用 <code class="docutils literal notranslate"><span class="pre">permutation</span></code> 函数,即打散原列表:</p>
572572
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [53]: </span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">permutation</span><span class="p">(</span><span class="n">my_list</span><span class="p">)</span>
573-
<span class="gh">Out[53]: </span><span class="go">array([&#39;d&#39;, &#39;c&#39;, &#39;a&#39;, &#39;b&#39;], dtype=&#39;&lt;U1&#39;)</span>
573+
<span class="gh">Out[53]: </span><span class="go">array([&#39;a&#39;, &#39;c&#39;, &#39;b&#39;, &#39;d&#39;], dtype=&#39;&lt;U1&#39;)</span>
574574
</pre></div>
575575
</div>
576576
<p>最后,需要提到的是随机种子,它能够固定随机数的输出结果:</p>

build/html/目录/ch10.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1009,19 +1009,19 @@ <h3>1. 滑动窗口<a class="headerlink" href="#id10" title="Permalink to this h
10091009
<span class="gp">In [107]: </span><span class="n">r</span> <span class="o">=</span> <span class="n">s</span><span class="o">.</span><span class="n">rolling</span><span class="p">(</span><span class="s1">&#39;30D&#39;</span><span class="p">)</span>
10101010

10111011
<span class="gp">In [108]: </span><span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">s</span><span class="p">)</span>
1012-
<span class="gh">Out[108]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x15d3c0c3708&gt;]</span>
1012+
<span class="gh">Out[108]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x20f041f36c8&gt;]</span>
10131013

10141014
<span class="gp">In [109]: </span><span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s1">&#39;BOLL LINES&#39;</span><span class="p">)</span>
10151015
<span class="gh">Out[109]: </span><span class="go">Text(0.5, 1.0, &#39;BOLL LINES&#39;)</span>
10161016

10171017
<span class="gp">In [110]: </span><span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">r</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
1018-
<span class="gh">Out[110]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x15d3be17ac8&gt;]</span>
1018+
<span class="gh">Out[110]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x20f041b3548&gt;]</span>
10191019

10201020
<span class="gp">In [111]: </span><span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">r</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span><span class="o">+</span><span class="n">r</span><span class="o">.</span><span class="n">std</span><span class="p">()</span><span class="o">*</span><span class="mi">2</span><span class="p">)</span>
1021-
<span class="gh">Out[111]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x15d3c06d0c8&gt;]</span>
1021+
<span class="gh">Out[111]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x20f041aeb48&gt;]</span>
10221022

10231023
<span class="gp">In [112]: </span><span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">r</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span><span class="o">-</span><span class="n">r</span><span class="o">.</span><span class="n">std</span><span class="p">()</span><span class="o">*</span><span class="mi">2</span><span class="p">)</span>
1024-
<span class="gh">Out[112]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x15d3c06d348&gt;]</span>
1024+
<span class="gh">Out[112]: </span><span class="go">[&lt;matplotlib.lines.Line2D at 0x20f0415a308&gt;]</span>
10251025
</pre></div>
10261026
</div>
10271027
<a class="reference internal image-reference" href="../_images/ch10.png"><img alt="../_images/ch10.png" src="../_images/ch10.png" style="width: 400px;" /></a>

build/html/目录/ch4.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,7 @@ <h3>3. Groupby对象<a class="headerlink" href="#groupby" title="Permalink to th
442442
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [13]: </span><span class="n">gb</span> <span class="o">=</span> <span class="n">df</span><span class="o">.</span><span class="n">groupby</span><span class="p">([</span><span class="s1">&#39;School&#39;</span><span class="p">,</span> <span class="s1">&#39;Grade&#39;</span><span class="p">])</span>
443443

444444
<span class="gp">In [14]: </span><span class="n">gb</span>
445-
<span class="gh">Out[14]: </span><span class="go">&lt;pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000015D3DF0FEC8&gt;</span>
445+
<span class="gh">Out[14]: </span><span class="go">&lt;pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000020F04FCA488&gt;</span>
446446
</pre></div>
447447
</div>
448448
<p>通过 <code class="docutils literal notranslate"><span class="pre">ngroups</span></code> 属性,可以访问分为了多少组:</p>

build/html/目录/ch8.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,7 @@ <h3>1. str对象的设计意图<a class="headerlink" href="#id2" title="Permalin
350350
<span class="gp">In [5]: </span><span class="n">s</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">Series</span><span class="p">([</span><span class="s1">&#39;abcd&#39;</span><span class="p">,</span> <span class="s1">&#39;efg&#39;</span><span class="p">,</span> <span class="s1">&#39;hi&#39;</span><span class="p">])</span>
351351

352352
<span class="gp">In [6]: </span><span class="n">s</span><span class="o">.</span><span class="n">str</span>
353-
<span class="gh">Out[6]: </span><span class="go">&lt;pandas.core.strings.StringMethods at 0x15d3e7ca648&gt;</span>
353+
<span class="gh">Out[6]: </span><span class="go">&lt;pandas.core.strings.StringMethods at 0x20f078d5c88&gt;</span>
354354

355355
<span class="gp">In [7]: </span><span class="n">s</span><span class="o">.</span><span class="n">str</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span> <span class="c1"># pandas中str对象上的upper方法</span>
356356
<span class="gh">Out[7]: </span><span class="go"></span>

build/html/目录/ch9.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@ <h3>1. cat对象的属性<a class="headerlink" href="#id2" title="Permalink to t
323323
</div>
324324
<p>在一个分类类型的 <code class="docutils literal notranslate"><span class="pre">Series</span></code> 中定义了 <code class="docutils literal notranslate"><span class="pre">cat</span></code> 对象,它和上一章中介绍的 <code class="docutils literal notranslate"><span class="pre">str</span></code> 对象类似,定义了一些属性和方法来进行分类类别的操作。</p>
325325
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="gp">In [6]: </span><span class="n">s</span><span class="o">.</span><span class="n">cat</span>
326-
<span class="gh">Out[6]: </span><span class="go">&lt;pandas.core.arrays.categorical.CategoricalAccessor object at 0x0000015D413C46C8&gt;</span>
326+
<span class="gh">Out[6]: </span><span class="go">&lt;pandas.core.arrays.categorical.CategoricalAccessor object at 0x0000020F04C48608&gt;</span>
327327
</pre></div>
328328
</div>
329329
<p>对于一个具体的分类,有两个组成部分,其一为类别的本身,它以 <code class="docutils literal notranslate"><span class="pre">Index</span></code> 类型存储,其二为是否有序,它们都可以通过 <code class="docutils literal notranslate"><span class="pre">cat</span></code> 的属性被访问:</p>

0 commit comments

Comments
 (0)