实战 | 快速上手Pandas

项目介绍

pandas是python数据分析中很是经常使用的一个模块,pandas中功能较多学起来有必定难度,本片文章经过一些简单例子带你们快速上手pandas。
python

咱们要用的森林植被的数据,文件名为parks.csv。git

首先先载入pandas:web

  
  
  
   
   
            
   
   
  1. 微信

import pandas as pd

而后用pandas读入数据,把公园编号'Park Code'设置为index网络

  
  
  
   
   
            
   
   
  1. app

  2. 机器学习

  3. ide

df = pd.read_csv('parks.csv', index_col=['Park Code'])# 显示出前5行df.head(5)

数据的列分别为:公园名字,公园在哪一个州,公园大小,维度,经度函数

获取单行数据学习

使用.iloc 加上行索引获取单行数据

  
  
  
   
   
            
   
   
df.iloc[2]

Park Name    Badlands National Park 

State                            SD 

Acres                        242756 

Latitude                      43.75 

Longitude                    -102.5 

Name: BADL, dtype: object

使用 .loc 方法加上index的名称获取单行数据

  
  
  
   
   
            
   
   
df.loc['BADL'] 

Park Name    Badlands National Park 

State                            SD 

Acres                        242756 

Latitude                      43.75 

Longitude                    -102.5 

Name: BADL, dtype: object

获取多行数据

loc加上多行数据的名称

  
  
  
   
   
            
   
   
df.loc[['BADL', 'ARCH', 'ACAD']]

iloc加上行索引

  
  
  
   
   
            
   
   
df.iloc[[2, 1, 0]]

获取数据分片

  
  
  
   
   
            
   
   
# 获取前3行数据df[:3]

  
  
  
   
   
            
   
   
# 获取后3行数据df[-3:]

获取单列数据 得到State这一列数据的前3行

  
  
  
   
   
            
   
   
df['State'].head(3)

Park Code 

ACAD    ME 

ARCH    UT 

BADL    SD 

Name: State, dtype: object

使用下面df.State方法能够得到一样效果

  
  
  
   
   
            
   
   
df.State.head(3)

Park Code 

ACAD    ME 

ARCH    UT 

BADL    SD 

Name: State, dtype: object

df.Park Code 将会出错,由于Park Code中间有空格

  
  
  
   
   
            
   
   
df.Park Code

 File " ", line 1     df.Park Code                ^ SyntaxError: invalid syntax

咱们能够把全部列的名称中的空格都替换成 _避免出错

  
  
  
   
   
            
   
   
df.columns = [col.replace(' ', '_').lower() for col in df.columns]print(df.columns)p=msno.bar(diabetes_data)

Index(['park_name', 'state', 'acres', 'latitude', 'longitude'], dtype='object')

获取多列数据

  
  
  
   
   
            
   
   
columns = ['state', 'acres']df[columns][:3]

选择数据的子集 选择state=='UT'的数据,False表示条件该行条件不成立,True表示该行条件成立

  
  
  
   
   
            
   
   
 (df.state == 'UT').head()

Park Code 

ACAD    False 

ARCH     True 

BADL    False 

BIBE    False 

BISC    False 

Name: state, dtype: bool

选择全部state=='UT'结果为True的行

  
  
  
   
   
            
   
   
df[df.state == 'UT']

更复杂一些的数据提取,获取纬度大于60或者面积大于10^6的数据的前三行

  
  
  
   
   
            
   
   
df[(df.latitude > 60) | (df.acres > 10**6)].head(3)

对park_name中的字符以空格作切分,切分后放入lambda x: len(x) == 3函数中作判断,若是判断正确返回True,判断错误返回False

  
  
  
   
   
            
   
   
df[df['park_name'].str.split().apply(lambda x: len(x) == 3)].head(3)

state中的数字为['WA', 'OR', 'CA']中的一个则为True,不然为False

  
  
  
   
   
            
   
   
df[df.state.isin(['WA', 'OR', 'CA'])].head()


做者简介



你可能还想看

独家连载:深度学习从0到1 

独家连载 | 覃秉丰深度学习重磅新书首发抢读!!!(1)

独家连载 | 覃秉丰深度学习重磅新书首发抢读!!!(2)

独家连载 | 深度学习“四大天王”,你知道几个?

独家连载 | 用了那么久Python,你可能还不知道...

独家连载 | 超详细!带你走进单层感知器与线性神经网络

独家连载 | 单层感知器与线性神经网络(续)!

独家连载 | 线性神经网络应用


项目实战:

实战 | 你知道平常识别二维码和条形码是怎么实现的吗?

实战 | 一行命令训练你的图像分类模型

实战 | 一行命令实现看图说话(Google的im2txt模型)

实战 | 抖音百万点赞:视频的字符化

实战 | 几行代码就能实现糖尿病预测了?是的,你没看错!

实战 | 一招让你的mao(猫)片十倍增加

实战 | 你知道如何用python获取股票交易数据吗?


资源放送:

资源 | 豆瓣8.2!《机器学习实战》

资源 | 中文版!《Deep Learning with Python》

资源 | 双语版!斯坦福CS229机器学习速查表集锦

资源 | 吴恩达新书《机器学习训练秘籍》中文版免费领取

资源 | 推荐!《Keras图像深度学习实战》,免费领取

资源 | 必看干货!AI 从业者都应该知道的实验数据集

资源 | 斯坦福深度学习基础教程中文版实操项目

力荐!一本看了目录就想窥探的书!

吴恩达《机器学习》笔记,哥大研究生献上


更多干货后台回复关键词领取

深度学习 | 机器学习 | 计算机视觉 | AI将来 | 数据分析




你的点赞转发是对咱们最大的支持

- End -

本文分享自微信公众号 - AI MOOC人工智能平台(AIMOOC_XLAB)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索