【使用pandas分析数据】

1 数据载入与初步观测

数据集下载 链接: https://www.kaggle.com/c/titanic/overview

1.1 导入numpy和pandas库

import numpy as np
import pandas as pd

//在此使用编译环境是jupyter
点击upload,即可加载本地数据集
在这里插入图片描述

1.2 `使用pandas加载数据集 train.csv

//使用相对路径
df = pd.read_csv('train.csv')
//使用绝对路径
import os
path = os.path.abspath('train.csv')
df = pd.read_csv(path)
df

在这里插入图片描述

1.3 以制表符为分隔符

在这里插入图片描述在这里插入图片描述

1.4以块读取数据

在这里插入图片描述

1.5 更改列名

方式一
在这里插入图片描述
方式二
在这里插入图片描述

1.6 查看数据数量、平均值、标准差等

在这里插入图片描述
count :数据个数,以上数据总体为891个,但年龄只有714个,说明在年龄上有空值。
mean:平均值
std:偏标准差
25% :前25%数据情况
max :最大值

1.7 查看数据

尾部数据
在这里插入图片描述
头部数据
在这里插入图片描述
数据是否为空
在这里插入图片描述

1.8 保存数据

在这里插入图片描述

2 pandas基础

2.1 Series数据创建

在这里插入图片描述
数据字典方式
在这里插入图片描述

2.2 DataFrame数据创建

在这里插入图片描述

2.3 查看数据集Cabin列

方式1
在这里插入图片描述
方式二
在这里插入图片描述

2.4 删除数据

//test_1数据集比train.csv数据集多一列 a
test_1 = pd.read_csv('test_1.csv')

删除a列方式1

在这里插入图片描述
删除a列方式2
在这里插入图片描述

删除多列

//以下删除多列,与本身数据集没有关系,变成新的数据集test_2

在这里插入图片描述

//以下删除多列,改变本身数据集test_1

在这里插入图片描述

2.5 筛选数据

//年龄小于10
test_1[test_1['Age'] < 10]

//年龄大于10小于50
midage = test_1[(test_1['Age'] > 10) & (test_1['Age'] < 50)]

//重新设置索引,由于筛选数据使索引的顺序改变
m1 = midage.reset_index() //将未筛选之前的数据索引列添加到原有数据
m2 = midage.reset_index(drop = True)//不会显示未筛选之前的数据索引列

//根据loc查找数据 [100]代表索引行,['Pclass','Sex']代表索引列
m2.loc[[100],['Pclass','Sex']]
m2.loc[[100,105,108],['Pclass','Name','Sex']]

//使用iloc查看数据[2,3,4]代表索引列的数值从0开始
m2.iloc[[100,105,108],[2,3,4]]

探索性数据分析

#创建DataFrame数据,3行4列
frame = pd.DataFrame(np.random.randn(3,4),
        index=['2','1','3'],
        columns=['d','a','b','c'])
        
#按某一列进行升序排序
frame.sort_values('c')

#行索引升序
frame.sort_index()

#列索引升序序
frame,sort_index(axis = 1)

#列索引降序排序
frame.sort_index(axis=1,ascending=False)

#a,c列降序排序
frame.sort_values(['a','c'],ascending = False)

DataFrame相加
fra1 = pd.DataFrame(np.arange(9.).reshape(3,3),
                   columns=['a','b','c'],
                   index=['1','2','3'])
fra2 = pd.DataFrame(np.arange(12.).reshape(4,3),
                   columns=['a','e','c'],
                   index=['4','1','2','6'])
fra1+fra2




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值