pandas基础和应用(1)
2018-10-20 本文已影响4人
柳叶刀与小鼠标
Pandas 是一个常用于数据分析的python第三方库(pandas在numpy的基础上,优化了数据的存储,读取,分割和转换)。pandas通过带有标签的列和索引,使我们可以以一种所有人都能理解的方式来处理数据。它可以毫不费力地从诸如 csv 类型的文件中导入数据。我们可以用它快速地对数据进行复杂的转换和过滤等操作。
pandas提供了三种数据对象,分别是Series,DataFrame和Panel。Series用于保存一维数据,DataFrame用于保存二维的数据,Panel用于保存三维类或者可变维度的数据。
系列(Series
)是能够保存任何类型的数据(整数,字符串,浮点数,Python对象等)的一维标记数组。轴标签统称为索引。
pandas.Series
series 是一种一维的数据类型,其中的每个元素都有各自的标签。,你可以把它当作一个由带标签的元素组成的 numpy
数组。标签可以是数字或者字符。
# -*- coding: utf-8 -*-
"""
Created on Sat Oct 20 17:48:24 2018
@author: Administrator
"""
% reset -f
% clear
# In[*]
import pandas as pd
import numpy as np
g = np.array([12.2,11.2,2,2.4,5.8,7.8])
g = np.array([12.2,11.2,2,2.4,5.8])
gdp = pd.Series(g,index=['a','b','c','d','e'])
gdp
Out[5]:
a 12.2
b 11.2
c 2.0
d 2.4
e 5.8
dtype: float64
完整参数:pd.Series(data = None, index=None, dtype=None, name=None,copy=False,fastpath=False0
指定索引:a = Series([1,2,3],index=['a','b','c']) 可以通过索引访问a['b']
判断某个索引是否存在:'b' in a。index的值为‘标签索引’而0,1,2等为数字索引
gdp[2]
Out[6]: 2.0
gdp['a']
Out[7]: 12.2
通过字典建立Series
dict = {'china':10,'america':30,'indian':20}
p = pd.Series(dict)
p
Out[11]:
china 10
america 30
indian 20
dtype: int64
同样你可以设置index顺序
dict = {'china':10,'america':30,'indian':20}
p = pd.Series(dict,index=['america','indian','china'])
p
Out[12]:
america 30
indian 20
china 10
dtype: int64
判断哪个索引值缺失:
dict = {'china':10,'america':30,'indian':20}
state = ['china','america','test']
p = pd.Series(dict,state)
p
print(p.isnull())
在算术运算中它会自动对齐不同索引的数据
a = pd.Series([10,20],['china','test'])
b = pd.Series([10,20],['test','china'])
print(a+b)
china 30
test 30
dtype: int64
指定Series对象的name和index的name属性
a = pd.Series([10,20],['china','test'])
a.index.name = 'state'
a.name = 'number'
print(a)
state
china 10
test 20
Name: number, dtype: int64