pandas学习 (一) Series和DataFrame简介

简介

pandas是一个开源的Python库,为Python提供了高性能,易于使用的数据结构和数据分析工具。
Anaconda中自带pandas,如果没有安装anaconda,使用pip install pandas安装

基本数据结构
  • Series
    Series是一种类似于以为数组的对象,由一组数据及一组与之相关的索引(默认是从0开始的int64序列)组成。
    导入:
from pandas import Series

创建一个简单的Series:

s = Series([9, 8, 7, 6])
s

输出:

使用自定义索引:

b = Series(a.values, index=list("abcd"))
b

输出:

传入字典:

students = {"01": "Charles", "02": "Jobs", "03": "Tony", "04": "Clark"}
c = Series(students)
c

输出:

如果第一个参数传字典,index也传了数组,Series的索引就是index对应的数组,值是索引对应的字典,如果在字典里找不到对应的key,value为nan

areas = ["05", "04", "03", "01"]
d = Series(students, areas)
d
  • DataFrame
    导入:
from pandas import DataFrame

使用二维数组创建:

import numpy as np
rand_array = np.random.rand(4, 3)
df = DataFrame(rand_array)
df[[1, 2]]

输出:

使用字典创建:

data = {"年份": [2012, 2013, 2014, 2015, 2016, 2017, 2018], 
        "地区": ["北京", "上海", "广州", "深圳", "杭州", "成都", "苏州"]}
df = DataFrame(data, columns=["年份", "地区"])
df

输出:

通过索引赋值:

df[1:3]#取1-3行,包括第3行
df["年份"] = np.arange(7)#也可以用Series赋值
df

DataFrame和Series同样支持花式索引

操作DataFrame

删除行或列:

df.drop("年份", axis=1)#axis=1时删除列,返回一个新的对象
del df["年份"]#直接对原对象进行操作

两个对象相加取行和列的并集:

b + c#算术对齐

输出:

以上就是pandas的两种基本数据结构,具体还有很多用法。
官方文档:http://pandas.pydata.org/pandas-docs/stable/

你可能感兴趣的:(pandas学习 (一) Series和DataFrame简介)