
>>> a=pd.Series([1,2],index=['a','b'])
>>> a
a 1
b 2
dtype: int64
>>> b=pd.Series(['b','a'])
>>> b
0 b
1 a
dtype: object
>>> b.index
RangeIndex(start=0, stop=2, step=1)
>>> b.values
array(['b', 'a'], dtype=object)
>>> a/2
a 0.5
b 1.0
dtype: float64
>>> dic={'zhang':1,'li':2}
>>> d=pd.Series(dic) 参数的形式是字典,numpy中参数是列表
>>> d
li 2
zhang 1
dtype: int64
>>> frame=pd.DataFrame('name':['zhang','li'],'age':[12,13],'addr':['beijing','shanghai'])
SyntaxError: invalid syntax
>>> dic={'name':['zhang','li'],'age':[12,13],'addr':['beijing','shanghai']}
>>> frame=pd.DataFrame(dic) 参数是字典
>>> frame
addr age name
0 beijing 12 zhang
1 shanghai 13 li
>>> frame.columns index,columns两个关键字属性
Index(['addr', 'age', 'name'], dtype='object')
>>> frame.index
RangeIndex(start=0, stop=2, step=1)
>>> frame2=pd.DataFrame(np.arange(16).reshape((4,4)),colums=['name','age','addr'],index=['a','b','c'])
>>> frame2
like name age addr
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> frame.name 指定列名字
0 zhang
1 li
Name: name, dtype: object
>>> frame2.ix[2] 查看某行 ix【】
like 8
name 9
age 10
addr 11
Name: c, dtype: int32
>>> frame2.ix[2,3]
11
>>> frame2.index.name='id';frame2.columns.name='item' 对标头的name属性指定
>>> frame2
item like name age addr
id
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> frame2['new']=12 添加新列
>>> frame2
item like name age addr new
id
a 0 1 2 3 12
b 4 5 6 7 12
c 8 9 10 11 12
d 12 13 14 15 12
>>> frame2['new']
id
a 12
b 12
c 12
d 12
Name: new, dtype: int64
>>> frame2['new']['b'] 根据列行找到元素
12
>>> frame2.isin([2])
item like name age addr new
id
a False False True False False
b False False False False False
c False False False False False
d False False False False False
>>> del frame['new']
>>> del frame2['new'] 删除列
>>> frame2
item like name age addr
id
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> frame2[frame2<8] 找到小于8的所有元素
item like name age addr
id
a 0.0 1.0 2.0 3.0
b 4.0 5.0 6.0 7.0
c NaN NaN NaN NaN
d NaN NaN NaN NaN
>>> frame.T 对表进行转置
0 1
addr beijing shanghai
age 12 13
name zhang li
>>> frame2.T
id a b c d
item
like 0 4 8 12
name 1 5 9 13
age 2 6 10 14
addr 3 7 11 15
>>> frame2.idxmin() 找到索引的最小值 idxmin()
item
like a
name a
age a
addr a
dtype: object
>>> frame2.idxmax()
item
like d
name d
age d
addr d
dtype: object
>>> frame2.index.is_unique
True
>>> frame2.reindex(['one','two','three','four'])
item like name age addr
id
one NaN NaN NaN NaN
two NaN NaN NaN NaN
three NaN NaN NaN NaN
four NaN NaN NaN NaN
>>> frame2
item like name age addr
id
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> frame2.drop('a') 删除行根据索引
item like name age addr
id
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> frame2.drop(['name'],axis=1) 删除列
item like age addr
id
a 0 2 3
b 4 6 7
c 8 10 11
d 12 14 15
>>> frame2
item like name age addr 每行-series
id
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> ser=[1,2,3,4]
>>> frame2-ser
item like name age addr
id
a -1 -1 -1 -1
b 3 3 3 3
c 7 7 7 7
d 11 11 11 11
>>> np.sqrt(frame2) 求所有的sqrt
item like name age addr
id
a 0.000000 1.000000 1.414214 1.732051
b 2.000000 2.236068 2.449490 2.645751
c 2.828427 3.000000 3.162278 3.316625
d 3.464102 3.605551 3.741657 3.872983
>>> f=lambda x:x.max()-x.min() 对frame f(x)默认是对一列的所有值中寻找
>>> frame2.apply(f)
item
like 12
name 12
age 12
addr 12
dtype: int64
>>> def f(x):
return pd.Series([x.min(),x.max()],index=['min','max']) >>> frame.apply(f)
addr age name
min beijing 12 li
max shanghai 13 zhang
>>> frame2.sum()
item
like 24
name 28
age 32
addr 36
dtype: int64
>>> frame.mean()
age 12.5
dtype: float64
>>> frame2.mean()
item
like 6.0
name 7.0
age 8.0
addr 9.0
dtype: float64
>>> frame2.describe()
item like name age addr
count 4.000000 4.000000 4.000000 4.000000
mean 6.000000 7.000000 8.000000 9.000000
std 5.163978 5.163978 5.163978 5.163978
min 0.000000 1.000000 2.000000 3.000000
25% 3.000000 4.000000 5.000000 6.000000
50% 6.000000 7.000000 8.000000 9.000000
75% 9.000000 10.000000 11.000000 12.000000
max 12.000000 13.000000 14.000000 15.000000
>>> frame.describe()
age
count 2.000000
mean 12.500000
std 0.707107
min 12.000000
25% 12.250000
50% 12.500000
75% 12.750000
max 13.000000
>>> frame2.sort_index()
item like name age addr
id
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
>>> frame.sort_index() 以索引进行排序
addr age name
0 beijing 12 zhang
1 shanghai 13 li
>>> frame
addr age name
0 beijing 12 zhang
1 shanghai 13 li
>>> ser.sort_index()
Traceback (most recent call last):
File "<pyshell#95>", line 1, in <module>
ser.sort_index()
AttributeError: 'list' object has no attribute 'sort_index'
>>> ser
[1, 2, 3, 4, 5]