Python数据分析之pandas入门
一、pandas库简介
二、pandas库的安装
三、Series的使用
- import pandas as pd
- ser=pd.Series([12,33,55,66])
- print(ser)
- '''输出为
- 0 12
- 1 33
- 2 55
- 3 66
- dtype: int64
- '''
运行上面的代码,可以知道,如果不指定标签,那么默认标签就是从0开始递增,我们也可以在声明一个Series对象时给它指定标签:
- import pandas as pd
- ser=pd.Series([12,33,55,66],index=['a','s','d','f'])
- print(ser)
- '''输出为:
- a 12
- s 33
- d 55
- f 66
- dtype: int64
- '''
- import pandas as pd
- ser=pd.Series([12,33,55,66])
- print(ser[2])
- ser[2]=99
- print(ser[2])
- '''输出为:
- 55
- 99
- '''
- import pandas as pd
- ser=pd.Series([12,33,55,66])
- ser2=ser/2
- print(ser2)
- import numpy as np
- print(np.log(ser))
- '''输出为:
- 0 6.0
- 1 16.5
- 2 27.5
- 3 33.0
- dtype: float64
- 0 2.484907
- 1 3.496508
- 2 4.007333
- 3 4.189655
- dtype: float64
- '''
- import pandas as pd
- dic={'wife':'kathy','son':'mary','mother':'lily','father':'tom'}
- ser=pd.Series(dic)
- print(ser)
- '''输出为:
- wife kathy
- son mary
- mother lily
- father tom
- dtype: object
- '''
四、DataFrame的使用
- import pandas as pd
- dic={'name':['tom','mary','john','mike'],'age':[14,15,77,45],'sex':['男','男','女','男']}
- frame=pd.DataFrame(dic)
- print(frame)
- '''输出为:
- name age sex
- 0 tom 14 男
- 1 mary 15 男
- 2 john 77 女
- 3 mike 45 男
- '''
- import pandas as pd
- dic={'name':['tom','mary','john','mike'],'age':[14,15,77,45],'sex':['男','男','女','男']}
- frame=pd.DataFrame(dic)
- frame['weight']=[89,99,145,123]
- print(frame)
- '''输出为:
- name age sex weight
- 0 tom 14 男 89
- 1 mary 15 男 99
- 2 john 77 女 145
- 3 mike 45 男 123
- '''
- import pandas as pd
- dic={'name':['tom','mary','john','mike'],'age':[14,15,77,45],'sex':['男','男','女','男']}
- frame=pd.DataFrame(dic)
- print(frame.T)
- '''输出为:
- 0 1 2 3
- name tom mary john mike
- age 14 15 77 45
- sex 男 男 女 男
- '''
五、Series与DataFrame对象之间的运算
- import pandas as pd
- import numpy as np
- frame=pd.DataFrame(np.arange(16).reshape((4,4)),index=['age','name','sex','weight'],columns=['john','tom','mary','cathy'])
- print(frame)
- ser=pd.Series(np.arange(4),index=['john','tom','mary','cathy'])
- print(ser)
- res=frame-ser
- print(res)
- '''输出为:
- john tom mary cathy
- age 0 1 2 3
- name 4 5 6 7
- sex 8 9 10 11
- weight 12 13 14 15
- john 0
- tom 1
- mary 2
- cathy 3
- dtype: int32
- john tom mary cathy
- age 0 0 0 0
- name 4 4 4 4
- sex 8 8 8 8
- weight 12 12 12 12
- '''