Pandas练习题_20220801

132 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第1天,点击查看活动详情 >>

  • 查看pandas 版本 :
pandas.__version__   # 这里是双英文下划线

import  pandas as pd 
#以后pd就是pandas库 
#如果你想查看版本就可以使用 pd.__version__
  • 查看版本的另一种方式:
import pandas as pd 
pd.show_versions() #这种方式打印的版本比较详细
  • 使用 Tab键可以出现函数提示,即 

输入pd.read 按tab键可以选择函数,补足你记不住函数的劣势

  • 查看函数文档

pd.函数名? 然后按shift+tab

image.png 读取本地文件

  • 数据分析有两种重要的数据类型,dataFrames(可以理解为一张sheet,具有各种供你操作属性的sheet) 和Series

这里是读取为dataFrame 

import pandas as pd 
Oo = pd.read_csv('./data/olympics.csv',skiprows=4 ) 
#第一个参数是文件的路径 ; 
#skiprow = 4 表示跳过前四行
  • series 

series是一个数组,对于一个dataFrame 每一行每一列都是一个 series,是一个1维的有索引的,每一列都是有索引的 

#在一个dataFrame中提取series 的方法 
Oo.City   
#city 是列名---这种方式列名没有空格 
cit=Oo['City']

打印的就是city列

  • 在dataFrame 中获取子DataFrame:

大于一列数据可以组成一个 DataFrame

#为了确认优先级,这里使用两个中括号 
sub = Oo[['City','Sport','Edition']] 
sub.head() 
type(sub) 
sub.tail() 
  • 查看sheet表的行数和列数
#查看sheet表的行数和列数 
Oo.shape 
#shape是一个属性,不是函数,其返回值是一个数组(row,column) 
Oo.shape[0#返回行数 
Oo.shape[1#返回列数
  • 获取 dataFrame 的信息
# 获取 dataFrame 的信息 
Oo.info()
  • 使用 sort_values 对dataFrame 进行排序
#sort_value() 可以对dataFrame 进行排序,也可以对series进行排序 
import pandas as pd 
oo = pd.read_csv('./data/olympics.csv',skiprows = 4) 
topfive = oo.head() 
topfive.sort_values('NOC')
  • 多列进行排序
#当对多列进行排序时,类似于Excel表中的排序中的主关键字,次关键字。。。 
import pandas as pd 
oo = pd.read_csv('./data/olympics.csv',skiprows = 4) 
topfive = oo.tail() 
#这里先比较Event,Event一致,在比较 NOC  
topfive.sort_values(['Event','NOC'])
  • 对series进行排序
#对series 进行排序 
noc.sort_values()
  • 使用bool值进行简单的筛选
oo.Medal == 'Gold' oo[(oo.Medal == 'Gold')& (oo.Gender == 'Women')] 
#筛选Mead 是 Gold 的,并且性别是女的数据
  • 字符串处理,数据模糊查询
#字符串处理,数据模糊查询 
#series 有个字符串属性 str  
#oo.athlete.str. 字符串函数名 
#tab键或者shift+tab 键 
oo[oo['Athlete'].str.contains('Valeska')]
# Athlete中包含 Valeska 的数据
  • 修改行或列名
# (inplace:是否将原数据结构替换为修改后格式)

df.rename(index = {'一':'one'},columns = {'col1':'new_col1'}, inplace = True)
  • 修改某列数据类型
df[[‘col_name’]]= df[[‘col_name’]].values.astype(int/float/str)