dataframe修改数据_【Python】Pandas基础:结构化数据处理

论坛 期权论坛     
选择匿名的用户   2021-6-2 15:48   184   0
<div class="._5ce-wx-style" style="font-size:16px;">
<div class="rich_media_content" id="js_content">
  <p><strong>点击上方“</strong><strong>风</strong><strong>控</strong><strong>圈</strong><strong>子</strong><strong>” </strong></p>
  <p><strong>选择“</strong><strong>星标</strong><strong>”公众号</strong></p>
  <p><strong>每天早上8:30,一起实现</strong><strong>自我增值</strong></p>
  <strong></strong>
  <strong></strong>
  01
  <p><strong> pandas及其重要性</strong></p>
  
  <ul><li>pandas是数据分析工作的首选库。它含有使数据分析工作变得更快更简单的高级数据结构和操作工具。</li><li>pandas是基于Numpy构建的让以Numpy为中心的应用变得更加简单。</li><li>它能满足工作中的许多需求:</li></ul>
      ① 具备按轴自动或显式数据对齐功能的数据结构。防止由于数据未对齐       导致的常见错误。
      ② 集成时间序列功能。
      ③ 技既能处理时间序列也能处理非时间序列数据的数据结构。
      ④ 数学运算和简约(agg),可以根据不同的元数据(轴编号)处理。
      ⑤ 灵活处理缺失数据。
      ⑥ 合并及其他出现在常见数据库中的关系型运算。
  <ul><li>pandas可以解决的数据问题随着它的库规模的增大而变得更加强大,成为数据分析一个不可或缺的工具。</li></ul>0
  2
  <h3><span style="font-weight:bold;">pandas的数据结构介绍</span></h3>
  <strong></strong>
  <strong>1 Series</strong>
  <ul><li>Series是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。由一组数据即可产生最简单的Series。</li><li>Series的字符串表现形式为:索引在左边,值在右边。自动创建一个0~N-1的整数型索引,可以通过values和index属性获取其数组表示形式和索引对象。</li></ul>
  <pre class="blockcode"><code><code>obj &#61; Series([4,7,-5,3])</code><code>obj.index</code><code>obj.values</code></code></pre>
  <ul><li>可以通过索引的方式选取Series的单个或者一组值。</li></ul>
  <pre class="blockcode"><code><code>obj[&#39;one&#39;] &#61; 1</code></code></pre>
  
  <ul><li>数组运算(如根据布尔型数组进行过滤、标量乘法、应用数学函数等)会保留索引与值之间的链接。</li></ul>
  <pre class="blockcode"><code><code>obj[obj &gt; 0]</code><code>obj * 2</code><code>np.exp(obj)</code></code></pre>
  <ul><li>可以将Series看作一个定长的有序字典,索引到值之间是一个映射。</li></ul>
  <pre class="blockcode"><code><code>&#39;a&#39; in obj</code></code></pre>
  <ul><li>如果数据被存放在一个python字典中,也可以直接通过这个字典创建Series。</li></ul>
  <pre class="blockcode"><code><code>data &#61; {&#39;one&#39;:1,&#39;two&#39;:2,&#39;three&#39;:3}</code><code>obj &#61; Series(data) </code></code></pre>
  <ul><li>如果只传入一个字典,则结果Series的索引就是原字典的键(有序排列)。</li><li>Series最重要的一个功能是:它在算术运算中会自动对齐不同索引的数据。</li><li>Series对象本身及其索引都有一个name属性,该属性跟pandas其他的关键功能关系非常密切:</li><li><pre class="blockcode"><code>obj.name &#61; &#39; population&#39;obj.index.name &#61; &#39;state&#39;obj.index &#61; [&#39;one&#39;,&#39;two&#39;,&#39;three&#39;,&#39;four&#39;]   #通过赋值的方式修改索引</code></pre></li></ul>03
  <h4><span style="font-weight:bold;"> DataFrame</span></h4>
  <ul><li><p>DataFrame是一个表格型的数据结构,含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。</p></li><li><p>DataFrame既有行索引也有列索引,可以被看做是Series组成的字典(共同用一个索引)。DataFrame面向行和列的操作基本上是平衡的。</p></li><li><p>DataFrame中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)。也可以轻松地将其表示为更高维度的数据(层次化索引的表格型结构,高级数据处理功能的关键要素)。</p></li><li><p>构建DataFrame的方法①:直接传入一个由等长列或Numpy数组组成的字典。</p></li></ul>
  <pre class="blockcode"><code>data &#61; ({<!-- -->&#39;&#39;:[],                 &#39;&#39;:[]              &#39;&#39;:[]})  frame &#61; DataFrame(data)</code></pre>
  <ul><li><p>结果DataFrame会自动加上索引,且全部列会被有序排列。</p></li><li><p>如果指定了列序列,则DataFrame的列会按照指定顺序进行排列。</p></li></ul>
  <pre class="blockcode"><code></code></pre>
  <p><code><code>DataFrame(data,columns &#61; [&#39;one&#39;,&#39;two&#39;,&#39;three&#39;])</code><code>frame &#61; DataFrame(data,columns &#61; [],index &#61; [])</code><code>frame.columns</code></code></p>
  <code></code>
  <ul><li><p>如果传入的数据找不到,就会产生NA值</p></li><li><p>通过类似字典标记的方式或属性的方式,可以将DataFrame的列获取为一个Series</p></li></ul>
  <pre class="blo
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP