用Pandas来处理我们的数据

浏览 725

课文

pandas 的知名度之高,了解过数据分析的应该都听过。pandas 是基于 NumPy 开发的,专用于处理大型多维数据集的分析工具。

Pandas的名称来自于面板数据(panel data)和数据分析(data analysis)。

pandas基本数据结构

pandas 里有两种主要的数据结构, Series和DataFrame。

**Series:**它是一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据也可产生简单的Series对象。

**DataFrame:**DataFrame是Pandas中的一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。

Series 的使用

创建一个Series

首先引入 pandas 与 numpy,因为我们经常在 pandas 与 numpy 间转换,所以经常是两者同时引入。

import pandas as pd
import numpy as np

将一个一维数组转换成 Series 对象。

a = pd.Series([5, 2, 4, 2, 3])
print(a)
0    5
1    2
2    4
3    2
4    3
dtype: int64

或者将一个字典转换成 Series 对象。

b = pd.Series(
    {
        "a": 5,
        "b": 2,
        "c": 3,
    }
)
print(b)
a    5
b    2
c    3
dtype: int64

我们可以看到当是数组转换的Series时左边会有从0开始的索引,字典生成的Series左边的索引则是之前的键。

相比于一维数组, Series 更像一个字典。

我们可以像操作字典一样通过 keys 方法获取所有的键。

a.keys()
RangeIndex(start=0, stop=5, step=1)
b.keys()
Index(['a', 'b', 'c'], dtype='object')

values 属性获取所有的值。

a.values
array([5, 2, 4, 2, 3], dtype=int64)
b.values
array([5, 2, 3], dtype=int64)

values 属性返回的值是一个 ndarray一维数组。

type(b.values)
numpy.ndarray

Series切片和索引

TODO

DataFrame 的使用

评论

登录参与讨论

暂无评论

共 0 条
  • 1
前往
  • 1