python进阶—pandas教程(一)

简介

        pandas是基于numpy构建的库,在数据处理方面可以把它理解为numpy的加强版,由于numpy主要用于科学计算,特长不在于数据处理,我们平常处理的数据一般带有列标签和index索引,这时pandas作为数据分析包而被开发出来。

pandas数据结构(Series/DataFrame)

       1、Series创建

       Series类似一维数组的数据结构,由一组数据(各种numpy数据类型)和与之关联的数据标签(索引)组成,结构相当于定长有序的字典,index和value之间相互独立.

import pandas as pd
import numpy as np

# 创建Series
a1 = pd.Series([1, 2, 3])  # 数组生成Series
a2 = pd.Series(np.array([1, 2, 3]))  # numpy数组生成Series
a3 = pd.Series([1, 2, 3], index=["index1", "index2", "index3"])  # 指定标签index生成
a4 = pd.Series({"index1": 1, "index2": 2, "index3": 3})  # 字典生成Series
a5 = pd.Series({"index": 1, "index2": 2, "index3": 3}, index=["index1", "index2", "index3"])  # 字典生成Series,指定index,不匹配部分为NaN
a6 = pd.Series(10, index=["index1", "index2", "index3"])

      2、Series属性

a1 = pd.Series([1, 2, 3])
index = a1.index  # Series索引
values = a1.values  # Series数值
a1.name = "population"  # 指定Series名字
a1.index.name = "state"  # 指定Series索引名字

      3、Series查找元素

a3 = pd.Series([1, 2, 3], index=["index1", "index2", "index3"])
# 查找元素
value1 = a3["index1"]  # 索引查找元素
value2 = a3.index1  # 键值索引查找元素
value3 = a3[0]  # 绝对位置查找元素
value4 = a3[["index1", "index2"]]  # 花式索引
value5 = a3[[0, 1]]  # 花式索引
value6 = a3[a3 > np.mean(a3)]  # 布尔值查找元素
value7 = a3[0:2]  # 绝对位置切片
value8 = a3["index1":"index3"]  # 索引切片

       4、Series修改元素

# 修改元素
a3["index3"] = 100  # 按照索引修改元素
a3[2] = 1000  # 按照绝对位置修改元素

        5、Series添加元素

# 添加元素
a3["index4"] = 10  # 按照索引添加元素

        6、Series删除元素

a3.drop(["index4", "index3"], inplace=True)  # inplace=True表示作用在当前Series
print(a3)  # index1 1 index2 2

        7、Series方法

a3 = pd.Series([1, 2, 3], index=["index1", "index2", "index3"])
a3["index3"] = np.NaN  # 添加元素
a3.isnull()  # 判断Series是否有缺失值
a3.notnull()  # 判断Series是否没有缺失值
print("index1" in a3)  # 判断Series中某个索引是否存在
a3.isin([1])  # 判断Series中某个值是否存在
a3.unique()  # 统计Series中去重元素
a3.value_counts()  # 统计Series中去重元素和个数

       

你可能感兴趣的:(python数据分析)