python基础课程6(看代码看注释)--pandas
##人生苦短,我用python#pandas##首先讲讲数据格式,csv文件格式,程序之间表格数据之间的转移,如从数据库导入到excel中csv是很合适的转移格式。#1.纯文本,使用某个字符集,比如ascii,Unicode,EBCDID或者GB2312等#2.由记录组成(典型的是每行一条记录)#3.每条记录被分隔符分割为字段(典型的分隔符有逗号、分好或者制表符、有时分隔符可以包括可选...
·
##人生苦短,我用python #pandas ##首先讲讲数据格式,csv文件格式,程序之间表格数据之间的转移,如从数据库导入到excel中csv是很合适的转移格式。 #1.纯文本,使用某个字符集,比如ascii,Unicode,EBCDID或者GB2312等 #2.由记录组成(典型的是每行一条记录) #3.每条记录被分隔符分割为字段(典型的分隔符有逗号、分好或者制表符、有时分隔符可以包括可选择的空格) #4.每条记录都有同样的字段序列 import pandas as pd import numpy as np df1 = "数据文件的路径" df = pd.read_csv(df1) df.head(2) type(df) ##重中之重:DataFrame df.colums#获取列名 df.col[1]#获取第1列 #获取索引 df.index #筛选:例如删选数学成绩大于80分的 df.数学>80 df[df.数学>80]#出现数学成绩大于80的所有学生的信息 #与munpy比较 ##复杂筛选:语数英同时大于80 (df.语文>80) & (df.数学>80) & (df.英语>80)#返回false或者true df((df.语文>80) & (df.数学>80) & (df.英语>80))#返回语数外同时大于80的结果 ##排序 df.sort_values(['数学'],)#对数学成绩进行排序 #对多列数据进行排序 df.sort_values(['数学','语文']) ##访问:loc函数是按照索引进行定位的 #不存在这种访问方式df[0] df.loc[1] ##索引的概念 score = { '英语':[90,100,99], '语文':[90,90,90], '数学':[100,100,90] } df = pd.DataFrame(score,index=['one','two','three']) df.index #此时不存在数字索引,索引不能通过数字索引取访问 #df.loc() df.loc['one'] #实实在在的第几行 df.iloc[0]#可以直接用数字索引 #ix[n]合并了loc和iloc的功能 df.ix[0]#实实在在访问第0行 ##访问多行 df.ix[:2] #访问某一行时直接使用df[0]是错误的,多行是可以的 df[:2] df.value() ##匿名函数 [i + 100 for i in range(10)] def func(x): return x + 100 list(map(lambda x:x+100,range(10))) ##根据多列生成一个列的操作 df['new_score']= df.apply(lambda x:x.数学+x.语文,axis=1) ##panda中的DataFrame的操作很大一部分都是跟numpy中的二维数组的操作是近似的
更多推荐
所有评论(0)