1.pandas py的数据分析包
1.安装Anaconda
2.python中安装: pip install pandas
2.数据准备
2.1数据结构
1.pandas中Series(一维)
from pandas import Series
a = ['a','b','c']
b = Series(a,index=[1,2,3])#a为列表
print(b)
运行结果:
1 a
2 b
3 c
dtype: object
DataFrame(二维)
from pandas import Series
from pandas import DataFrame
a = ['a','b','c']
b = DataFrame({'age':Series(a),'name':['j','k','l']})
print(b)
print("\n")
print(b[0:2])#行
print("\n")
print(b['age'])#列
print("\n")
print(b.iloc[0:2,0:2])#块,行和列
print("\n")
print(b.at[1,'age'])#位置,第几行,第几列
2、panel(三维)(暂不学)
2.2数据导入与导出
1导入.(txt,csv,excl)
from pandas import read_table
from pandas import read_csv
from pandas import read_excel
#导入TXT,csv,excel
read_table(file,,name=[列名1,列名2],sep='',)
read_csv(file,,name=[列名1,列名2],sep='',)
read_excel(file,,name=[列名1,列名2],sep='',)
2.导出
#to_table('1.txt')
#to_excel('1,excel')
#to_csv('1.csv')
#1.scv为文件名
3.数据处理(方法)
3.1数据清洗
1. drop_duplicates() #去(重复)行,剩一行
2. (缺失)值处理
(1)dropna() #去空行
(2)fillna('1') #用1代替空行,
(3)fillna(method='pad') #'pad'前一个数值替代
(4)fillna(method='bfill') #'pad'后一个数值替代
(5)fillna(.mean()) #平均数或其他统计数字值替代
(6)fillna(.mean())['math:physcical']#选择列进行缺失值处理
(7)strip() #去首位空格
#列:
from pandas import Series
from pandas import DataFrame
from pandas import read_excel
a=read_excel('c:\\1.xlsx')
print(a)
print('\n')
# b=a.fillna('!')
# c=a.dropna()
# d=a.fillna(method='pad')
# e=a.fillna(method='bfill')
# f=a.fillna(a.mean())
# g=a.fillna(a.mean())['math':'physcical']
3.2数据抽取
(1)slice(srart,stop) #字段抽取
(2)split(sep,n,expand=False) #字段拆分,sep字符串分隔符,n分割后新增列数,expand是否展开为数据框
(3)dataframe(condition) #conditioon 过滤条件
(4)numpy.random.randint(start,end,num)#随机抽样,num个数
(5)字典数据————将字典数据抽取为dataframe,三种方法
a = {'a':'[1,2,3]','b':'[0,1,2]'}#值有''
a = {'a':[1,2,3],'b':[0,1,2]} #值必须为列表
from pandas import DataFrame
a = {'a':[1,2,3],'b':[0,1,2]}
b = DataFrame(a)
print(b)
#运行结果
a b
0 1 0
1 2 1
2 3 2
3.3排名索引
#1.排名索引
#.sort_index()方法
#2.重新索引
#.reindex()方法
#1
import pandas
from pandas import DataFrame
a = {'a':[1,2,3],'b':[0,1,2]}
b = DataFrame(a,index=['b','c','a'])
c=b.sort_index()#对index进行排序,默认升序
print(c)