利用python进行数据分析——DataFrame基本操作

本篇介绍操作Series和DataFrame的基本手段。

1. 对DataFrame的列进行赋值

  • 将列表、数组、元组赋值为DataFrame的列,长度匹配即可
  • 将Series赋值给DataFrame的列,二者的索引会精确匹配(索引不会合并,依旧是DataFrame的索引)
  • 若被赋值的列不存在,则会创建一个新列

利用python进行数据分析——DataFrame基本操作_第1张图片

 2. 删除DataFrame的列(del)

利用python进行数据分析——DataFrame基本操作_第2张图片

 3. DataFrame的name和values属性

  • DataFrame.index.name
  • DataFrame.columns.name
  • DataFrame.values(会以二维ndarray的形式返回DataFrame中的数据,如果DataFrame中各列数据类型不同,则会返回能兼容所有列的数据类型)

4. 重新索引(reindex)

    创建一个适应新索引的新对应(copy)

  • Series的重新索引

        1). 根据新索引进行重排

        2). 索引不存在,则会引入缺失值

              2.1) 通过fill_value参数(scaler),填充缺失值

              2.2) 通过method参数,进行插值处理(注意:原Series的index需为单调递增或者单调递减,否则无法进行差值处理,通常用于时间序列)

利用python进行数据分析——DataFrame基本操作_第3张图片

利用python进行数据分析——DataFrame基本操作_第4张图片

  •  DataFrame的重新索引

         1) 通过index参数对行进行重新索引

         2) 通过columns参数对列进行重新索引

         3) 也可同时进行索引

         4) 采用loc方法

利用python进行数据分析——DataFrame基本操作_第5张图片

利用python进行数据分析——DataFrame基本操作_第6张图片

 5. 丢弃指定轴上的项(drop)

  • 参数1:索引数据or索引列表
  • 参数2:axis(0 or 1)

利用python进行数据分析——DataFrame基本操作_第7张图片

6. 算术运算与数据对齐

  • Series与Series之间的算术运算(+、-、*、/)

        直接运算:

                index之间进行合并

                不重叠的索引处引入NaN

                缺失值在运算过程中会传播

        间接运算:

                add()、sub()、mul()、div()

                参数fill_value填充缺失值

  • DataFrame与DataFrame之间的算术运算(+、-、*、/)

        直接运算:

                合并(同时发生在index和columns上)

                不重叠的索引处引入NaN

                缺失值在运算过程中会传播

        间接运算:

                add()、sub()、mul()、div()

                参数fill_value填充缺失值

  • DataFrame与Series之间的算术运算(+、-、*、/)

        直接运算:

                默认:Series的索引将会匹配到DataFrame的列上,沿着行向下传播

               索引之间进行合并

               不重叠的索引处引入NaN

                缺失值在运算过程中会传播

        间接运算:

                add()、sub()、mul()、div()

                参数fill_value填充缺失值

                参数axis确定所匹配的轴

利用python进行数据分析——DataFrame基本操作_第8张图片

 利用python进行数据分析——DataFrame基本操作_第9张图片

 利用python进行数据分析——DataFrame基本操作_第10张图片

 利用python进行数据分析——DataFrame基本操作_第11张图片

 7. 函数应用和映射

  • Numpy的ufuncs(元素级数组操作方法,也可用于操作pandas对象)
  • DataFrame.apply():针对DataFrame中的一整行或者一整列进行运算
  • DataFrame.applymap():针对DataFrame中的每个元素进行运算

利用python进行数据分析——DataFrame基本操作_第12张图片

 8. 排序和排名

  • 按索引排序(sort_index())
  1. axis:按行索引或列索引进行排名
  2. ascending:升序or降序
  3. inplace:是否替换
  4. kind:排序方法
  5. na_position:控制排在开头or末尾
  6. by:根据值排序,现在还可用,但是FutureWarning: by argument to sort_index is deprecated, please use .sort_values(by=...)
  • 按值排序
  1. Series:按值排序
  2. DataFrame:按一个或者多个列进行排序(也有axis参数,按照行排序,但是前提是依据排序的行是可比较的
  • 获得排名(rank)
  1. method选项:average、min、max、first
  2. Series排名
  3. DataFrame排名

示例1(sort_index):

利用python进行数据分析——DataFrame基本操作_第13张图片

示例2(sort_values):

利用python进行数据分析——DataFrame基本操作_第14张图片

示例3(rank):

 利用python进行数据分析——DataFrame基本操作_第15张图片

利用python进行数据分析——DataFrame基本操作_第16张图片 

 9. 带有重复值的轴索引

     Pandas数据结构可以带有重复索引值。对于带有重复值的索引,数据选取的行为将会有所不同

利用python进行数据分析——DataFrame基本操作_第17张图片

 

你可能感兴趣的:(利用python进行数据分析,python,数据分析,pandas)