码迷,mamicode.com
首页 > 其他好文 > 详细

读书笔记6pandas简单实用

时间:2016-04-20 00:26:56      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:

一、序列Series,很像numpy中的array数组,可以由列表、元组、字典、numpy中的array来初始化

>>> from pandas import Series
>>> s = Series([0.1, 1.2, 2.3, 3.4, 4.5])
>>> s
0 0.1
1 1.2
2 2.3
3 3.4
4 4.5
dtype: float64

2、序列也可以由标签组成,默认是由数字表示。

>>> s = Series([0.1, 1.2, 2.3, 3.4, 4.5], index = [’a’,’b’,’c’,’d’,’e’])
>>> s
a 0.1
b 1.2
c 2.3
d 3.4
e 4.5
dtype: float64

索引的话可以由数字、标签、真值表、切片

from pandas import Series
s = Series([0.1, 1.2, 2.3, 3.4, 4.5], index = [a,b,c,d,e])
s[1]
Out[36]:
1.2
from pandas import Series
s = Series([0.1, 1.2, 2.3, 3.4, 4.5], index = [a,b,c,d,e])
print s[1],\n
print s[1:4],\n
print s[s>3],\n
print s[[1,2,3]]
1.2 

b    1.2
c    2.3
d    3.4
dtype: float64 

d    3.4
e    4.5
dtype: float64 

b    1.2
c    2.3
d    3.4
dtype: float64

二、序列的常用函数

1、head and tail来显示头部5行或末尾5行数据,也可以通过传递参数来修改显示的行数

from pandas import Series
s = Series([0.1, 1.2, 2.3, 3.4, 4.5], index = [a,b,c,d,e])
print s.head(),\n
print s.head(2)
a
0.1 b 1.2 c 2.3 d 3.4 e 4.5 dtype: float64 a 0.1 b 1.2 dtype: float64

2、isnull and notnull返回等长的序列,

3、describe返回序列的一些统计特性

from pandas import Series
import numpy as np
s=Series(np.arange(1.0,10))
s.describe()
Out[43]:
count    9.000000
mean     5.000000
std      2.738613
min      1.000000
25%      3.000000
50%      5.000000
75%      7.000000
max      9.000000
dtype: float64

4、unique and nunique,返回不重复的数据集或者重复的数据集

5、drop(labels) 删除制定标签的数据,dropna()是删除NaN数据

6、append(series) 添加数据

from pandas import Series
import numpy as np
s=Series(np.arange(1.0,10))
s2=Series([22,33,44,55])
print s.append(s2)
?
0     1.0
1     2.0
2     3.0
3     4.0
4     5.0
5     6.0
6     7.0
7     8.0
8     9.0
0    22.0
1    33.0
2    44.0
3    55.0
dtype: float64

7、replace(series,values) 将series数据集中的数据替换成values数据集

注意:这个替换是将替换后的数据返回,而不是在原来的数据集上做替换

from pandas import Series
import numpy as np
s=Series(np.arange(1.0,10))
s2=Series([22,33,44,55])
s3=s.append(s2)
print s3.replace([2,5,8],[22,55,99])
s3
?
0     1.0
1    22.0
2     3.0
3     4.0
4    55.0
5     6.0
6     7.0
7    99.0
8     9.0
0    22.0
1    33.0
2    44.0
3    55.0
dtype: float64
Out[51]:
0     1.0
1     2.0
2     3.0
3     4.0
4     5.0
5     6.0
6     7.0
7     8.0
8     9.0
0    22.0
1    33.0
2    44.0
3    55.0
dtype: float64

8、update(series)用series来更新,只更新匹配上标签的数据

注意:是在原来数据集上做更新

>>> s1 = Series(arange(1.0,4.0),index=[’a’,’b’,’c’])
>>> s1
a 1
b 2
c 3
dtype: float64
>>> s2 = Series(-1.0 * arange(1.0,4.0),index=[’c’,’d’,’e’])
>>> s1.update(s2)
>>> s1
a 1
b 2
c -1
dtype: float64

9、数据框架,DataFrame,相当于array上的二维数组,区别于array数组的地方时它可以是不同数据类型的数据组合在一起

 
from pandas import DataFrame
a=np.array([[1,2],[3,4]]);
df=DataFrame(a)
df
Out[52]:
     0    1
0    1    2
1    3    4

>>> df = DataFrame(array([[1,2],[3,4]]),columns=[’a’,’b’])
>>> df
a b
0 1 2
1 3 4

也可以指定行标签和列标签

>>> df = DataFrame(array([[1,2],[3,4]]), columns=[’dogs’,’cats’], index=[’Alice’,’Bob’])
>>> df
dogs cats
Alice 1 2
Bob 3 4

 

 

 

 

读书笔记6pandas简单实用

标签:

原文地址:http://www.cnblogs.com/zhaopengcheng/p/5410633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!