<h2>修复数值列以正确应用<code>astype</code></h2>
<ul>
<li>从<code>school_df</code></li>
</ul>
<pre class="lang-py prettyprint-override"><code>display(school_df.head())
| | Code | Area_name | Inner/_Outer_London | NEET | Score | Noparents | Familyoffwork | TeensPragnancy |
| -:|: |: -|: |: -| :| :| :|: -|
| 0 | E09000001 | City of London | Inner London | . | 78.6 | 101 | 7.9 | . |
| 1 | E09000002 | Barking and Dagenham | Outer London | 5.7 | 58 | 69 | 18.7 | 32.4 |
| 2 | E09000003 | Barnet | Outer London | 2.5 | 67.3 | 35 | 9.3 | 12.8 |
| 3 | E09000004 | Bexley | Outer London | 3.4 | 60.3 | 46 | 12.6 | 19.5 |
| 4 | E09000005 | Brent | Outer London | 2.6 | 60.1 | 45 | 13.7 | 18.5 |
display(school_df.tail())
| | Code | Area_name | Inner/_Outer_London | NEET | Score | Noparents | Familyoffwork | TeensPragnancy |
| -:|: |: -| :|: -|: |: | :|: -|
| 33 | E13000001 | Inner London | nan | 3.3 | . | 56 | 0.8 | 23.1 |
| 34 | E13000002 | Outer London | nan | 3.4 | . | 47 | 12.2 | 20.7 |
| 35 | E12000007 | London | nan | 3.4 | 61.8 | 51 | 14.4 | 21.5 |
| 36 | E92000001 | England | nan | 4.7 | 56.8 | 60 | 14 | 22.8 |
| 37 | K02000001 | United Kingdom | nan | . | . | . | 18.2 | . |
# replace the '.'
school_df.replace('.', np.nan, inplace=True)
# set the type
school_df = school_df.astype({'NEET': float, 'Score': float, 'Noparents': float, 'Familyoffwork': float, 'TeensPragnancy': float})
# get corr
school_df.corr()
| | NEET | Score | Noparents | Familyoffwork | TeensPragnancy |
|: -| :| :| :| :| -:|
| NEET | 1 | -0.122794 | 0.192059 | 0.116928 | 0.153306 |
| Score | -0.122794 | 1 | -0.238971 | -0.736165 | -0.764346 |
| Noparents | 0.192059 | -0.238971 | 1 | 0.404303 | 0.725914 |
| Familyoffwork | 0.116928 | -0.736165 | 0.404303 | 1 | 0.500839 |
| TeensPragnancy | 0.153306 | -0.764346 | 0.725914 | 0.500839 | 1 |
</code></pre>
<h2>另外</h2>
<ul>
<li>以下是不正确的分配原因</li>
</ul>
<pre class="lang-py prettyprint-override"><code>school_df1 = school_df.drop(school_df.tail(5).index, inplace=True)
school_df2 = school_df.drop(school_df.head(1).index, inplace=True)
</code></pre>
<h3>正确的方法1:</h3>
<pre class="lang-py prettyprint-override"><code>school_df1 = school_df.drop(school_df.tail(5).index)
school_df2 = school_df1.drop(school_df1.head(1).index)
</code></pre>
<h3>正确的方法2:</h3>
<pre class="lang-py prettyprint-override"><code>school_df.drop(school_df.tail(5).index, inplace=True)
school_df.drop(school_df.head(1).index, inplace=True)
</code></pre>