<div id="js_content">
<blockquote>
<p>来源:Python数据之道</p>
<p>作者:Peter</p>
<p>整理:阳哥</p>
</blockquote>
<p>如果你用 Python 做数据分析,必然会绕不过 Pandas 的使用,实际上, Python 也是由于 numpy、pandas 等数据科学库的出现,才开始在数据科学领域实现了快速的发展,因此,学好 Pandas 有很重要的现实意义。</p>
<p><strong>「Python数据之道」</strong> 之前已经分享过一些关于介绍 Pandas 的内容,大家也可以前往阅读:</p>
<ul><li><p><a href="https://mp.weixin.qq.com/s?__biz=MzI2NjY5NzI0NA%3D%3D&idx=1&mid=2247483867&scene=21&sn=6cafddd7868d4bfd6d2fbc2426cdae9a#wechat_redirect">一篇文章掌握Numpy的基本用法</a></p></li><li><p><a href="https://mp.weixin.qq.com/s?__biz=MzI2NjY5NzI0NA%3D%3D&idx=1&mid=2247495986&scene=21&sn=feae3e39b3f8f3a3d3d9f3db8ffea6c7#wechat_redirect">Pandas 的这个知识点,估计 80% 的人都得挂!</a></p></li><li><p><a href="https://mp.weixin.qq.com/s?__biz=MzI2NjY5NzI0NA%3D%3D&idx=2&mid=2247494743&scene=21&sn=a476f083e9a5ee24aebfc231a7100096#wechat_redirect">Pandas 的 groupby 操作</a></p></li><li><p><a href="https://mp.weixin.qq.com/s?__biz=MzI2NjY5NzI0NA%3D%3D&idx=1&mid=2247491157&scene=21&sn=1c448b61a46db9762551ecac6e60f000#wechat_redirect">一文搞定pandas的数据合并</a></p></li><li><p><a href="https://mp.weixin.qq.com/s?__biz=MzI2NjY5NzI0NA%3D%3D&idx=2&mid=2247491050&scene=21&sn=0a23a0a05c1407103b0d8ffbce1045fc#wechat_redirect">一文看懂 Pandas 中的透视表</a></p></li></ul>
<hr>
<p>本文总结自己经常使用的pandas操作方法:</p>
<ul><li><p>创建DataFrame数据</p></li><li><p>查看数据相关信息</p></li><li><p>查看头尾文件</p></li><li><p>花样取数</p></li><li><p>切片取数</p></li><li><p>常见函数使用</p></li></ul>
<p>首先,导入包</p>
<pre class="blockcode"><code class="language-go">import pandas as pd
import numpy as np
</code></pre>
<h2>01 创建DataFrame数据</h2>
<h3>方式1:通过字典直接创建</h3>
<pre class="blockcode"><code class="language-go">df1 = pd.DataFrame({
"name":["小明","小红","小孙","王小","关宇","刘蓓","张菲"],
"age":[20,18,27,20,28,18,25],
"sex":["男","女","男","男","男","女","女"],
"score":[669,570,642,590,601,619,701],
"address":["北京","深圳","广州","武汉","深圳","广州","长沙"]
})
df1
</code></pre>
<p>数据如下图:</p>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-bd9056f647ecc6193a227203b6325d7e.png">
<h3>方式2:通过本地数据读取</h3>
<p>从本地文件中读取进来。现在本地有一个文件:<code>学生信息.xlsx</code>直接通过<code>pd.read_excel()</code>读进来:</p>
<pre class="blockcode"><code class="language-go">df2 = pd.read_excel("学生信息.xlsx")
df2
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-14907be034e184a010c175b5e8e60093.png">
<p>可以看到效果和上面是一样的</p>
<h2>02 数据探索</h2>
<h3>查看数据shape</h3>
<p>shape表示数据是由多少行和列组成:</p>
<pre class="blockcode"><code class="language-go">df1.shape # (7,5)
</code></pre>
<h3>查看字段属性名称</h3>
<pre class="blockcode"><code class="language-go">df1.columns
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-9212b5228ec4c06581ed6f3d45004207.png">
<h3>查看属性的数据类型</h3>
<pre class="blockcode"><code class="language-go">df1.dtypes
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-bc0b7c87a445cb638f639074cd12cc4e.png">
<p>可以看到只有两种数据类型:int64和object</p>
<h3>查看数据是否缺失</h3>
<pre class="blockcode"><code class="language-go">df1.isnull() # 如果缺失显示为True,否则显示False
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-271fb10e47b674c41022b4808dd8c2ec.png">
<pre class="blockcode"><code class="language-go">df1.isnull().sum() # 统计缺失值的个数。一个True计数一次
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-8e9526334112e4424b2ebafd3ef5a676.png">
<p>结果显示:本次数据是没有缺失值的</p>
<h3>查看数据行索引</h3>
<pre class="blockcode"><code class="language-go">df1.index
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-d1700dd257818d4280064b379b17f02d.png">
<h3>查看数据描述信息</h3>
<pre class="blockcode"><code class="language-go">df1.describe
</code></pre>
<img src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-4e075e2de213fd770b2b828faa4edb67.png">
<h3>查看数据统计值</h3>
<p>统计值信息只会显示类型为数值型的数据统计值信息&#x |
|