datawhale6月组队学习-task01
datawhale6月组队学习-task01
1.数据加载
利用kaggle网站的泰坦尼克号数据集进行学习分析
下载网址: https://www.kaggle.com/c/titanic/overview
# 导入相关库
import numpy as np
import pandas as pd
import os
1.1 加载数据
(1) 使用相对路径载入数据
# 相对路径载入
os.getcwd() #查看当前工作目录,将数据集复制到这里
train_data = pd.read_csv('train.csv')
train_data.head(5)
(2) 使用绝对路径载入数据
# 绝对路径载入
train_data = pd.read_csv(r'F:\jupyter\datawhale_dataAnalysis\train.csv')
train_data.head(5)
加载其他格式的数据集,例如txt,xlsx等可以参考以下链接:
IO tools (text, CSV, HDF5, …) — pandas 1.2.4 documentation (pydata.org)
数据加载-简书
Comparison with SQL — pandas 1.2.4 documentation (pydata.org)
1.2 逐块读取
目的是从超大的数据集中读取电脑内存所能承受大小的数据集
for chunk in chunkers:print(chunk)print(chunk.shape)print(type(chunk))
1.3 更改表头
colnames = ['乘客ID','是否幸存','仓位等级','姓名','性别','年龄','兄弟姐妹个数','父母子女个数','船票信息','票价','客舱','登船港口']
# train_data = pd.read_csv('train.csv', names=colnames,header=0) 乘客ID在数据列中
train_data = pd.read_csv('train.csv', names=colnames,header=0,index_col='乘客ID')
train_data
1.4 转换成csv表
train_data.to_csv('train_chinese.csv',encoding='GBK')
2.初步分析
2.1 info()和describe()
train_data.info()
train_data.describe()
2.2 缺失值
# 查看每一列的缺失值个数
train_data.isnull().sum()
# 可视化缺失值
import missingno as msno
msno.matrix(train_data)
msno.bar(train_data)
缺失值处理:删除;填充(线性插值、移动平均、向前/向后、机器学习建模方法)
2.3 异常值
# 画箱线图
import matplotlib.pyplot as plt
import seaborn as sns
plt.figure(figsize=(12,6))
plt.grid(linestyle="--",alpha=0.2) #加格子线
sns.boxplot(x="Survived", y='Age', data=train_data, showmeans=True)
plt.tight_layout()
(2条消息) pandas数据的异常值判断、可视化以及异常值的处理_梁先森的博客-CSDN博客
异常值处理:用max/min代替
2.4 条件筛选
(1)series和dataframe介绍
https://pandas.pydata.org/pandas-docs/stable/user_guide/dsintro.html
删除一列的方法:del,drop(inplace=True),pop
(2)loc和iloc区别
df.loc[‘label’] = df.iloc[index]
#将midage的数据中第100,105,108行的"Pclass","Name"和"Sex"的数据显示出来
midage.loc[[100,105,108],['Pclass','Name','Sex']]
midage.iloc[[100,105,108],[2,3,4]]
(3)按列筛选
# 以"Age"为条件,将年龄在10岁以上和50岁以下的乘客信息显示出来,并将这个数据命名为midage
# 交集:&;并集:|
midage = train_data[(train_data["Age"]>10)& (train_data["Age"]<50)]
midage
(4)分组筛选
Comparison with SQL — pandas 1.2.4 documentation (pydata.org)
# 例子:数据挖掘hw3
gp = data.groupby(["省份"])["累计确诊人数"].sum().reset_index() # reset_index重置index
gp['累计确诊人数'] = gp['累计确诊人数'].astype('int') #对原始数据进行转换并覆盖原始数据列
gp
tablebar = gp.sort_values(by='累计确诊人数',ascending=False).head(10)
tablebar.index = range(len(tablebar))
tablebar
3.探索性分析
《利用Python进行数据分析》/《Python for Data Analysis》第五章
3.1 排序
(1)按行、列索引
# 行索引(默认升序)
df.sort_index()
# 列索引(默认升序)
df.sort_index(axis=1)
# 行索引降序
df.sort_index(ascending=False)
(2)按某一列的值
df.sort_values(by=['票价', '年龄'], ascending=False)
可分析票价和存活(存活率)之间的关系,年龄和存活(存活率)之间的关系
3.2 分组分析
# 最大家族有多少人
max(df['兄弟姐妹个数'] + df['父母子女个数'])
df.sort_values(by=['票价', '年龄'], ascending=False)
可分析票价和存活(存活率)之间的关系,年龄和存活(存活率)之间的关系
3.2 分组分析
# 最大家族有多少人
max(df['兄弟姐妹个数'] + df['父母子女个数'])
datawhale6月组队学习-task01相关推荐
- datawhale9月组队学习task01环境搭建,初始数据库
Datawhale9月组队学习 task01环境搭建,初始数据库 文章目录 Datawhale9月组队学习 task01环境搭建,初始数据库 一.环境搭建 1.MySQL 8.0的安装 2. 连接 M ...
- Datawhale2021年11月组队学习——绪论与深度学习概述数学基础
以下内容为对Datawhale2021年11月组队学习中"水很深的深度学习"课程的绪论与深度学习概述以及数学基础的简要总结,其中小部分内容参考了网上一些资料. 原文链接: http ...
- Datawhale7月组队学习task1数据加载及探索性数据分析
Datawhale7月task1数据加载及探索性数据分析 有幸了解到了Datawhale这样一个开源组织,欣然报名了2021年7月的组队学习的动手学数据分析系列课程 本系列目标:完成kaggl ...
- 【深度推荐算法】DataWhale组队学习Task01: DeepCrossing
DeepCrossing 动机 将深度学习架构应用于推荐系统中的模型2016年由微软提出, 完整的解决了特征工程.稀疏向量稠密化, 多层神经网络进行优化目标拟合等一系列深度学习再推荐系统的应用问题. ...
- 12月组队学习|CSAPP|task01
文章目录 编译的四大过程 运行hello.exe文件 计算机系统的硬件组成 三级高速缓存的引入 操作系统是硬件和应用程序的中间层 进程之间的切换 Use ssh run hello program 阿 ...
- 8月组队学习机器学习理论
学习资料 <统计学习方法>李航 <统计学习方法>知乎参考读物 吴恩达机器学习笔记 学习安排 严格安装计划表来,保证在8月底前学完 [进度和问题]记录在石墨文档 组队 目前团队3 ...
- 科大讯飞:电信客户流失预测挑战赛baseline——Datawhale6月组队打卡笔记(1)
文章目录 1. 赛题介绍 2. 赛题任务 3.赛题数据 4.评分标准 5.赛题baseline 5.1 导入模块 5.2 数据预处理 5.3 训练数据/测试数据准备 5.4 构建模型 5.5 提交结果 ...
- Datawhale7月组队学习task4数据可视化
Datawhale7月task4数据可视化 准备工作 **复习:**回顾学习完第一章,我们对泰坦尼克号数据有了基本的了解,也学到了一些基本的统计方法,第二章中我们学习了数据的清理和重构,使得数据更加的 ...
- Datawhale组队学习 Task01:数组(1天)
Task01:数组(1天) 1. 数组的定义 数组是具有一定顺序关系的若干对象组成的集合,组成数组的对象称为数组元素. 例如: 向量对应一维数组 矩阵对应二维数组 数组名表示群体的共性,即具有同一种数 ...
最新文章
- 操作系统 作业调度实验报告
- 什么是上采样和下采样
- eeglab中文教程系列(6)-数据叠加平均{1}(Data averaging)
- SpringMVC如何获取请求带来的各种信息 ||如果我们的请求参数是一个POJO(自定义参数类型), SpringMVC会自动的为这个POJO进行赋值
- Dos中重定向与文件追加
- C++中string、char *、char[]的转换
- DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义
- L2-016 愿天下有情人都是失散多年的兄妹 CCCC
- java volatile实例_Java的Volatile实例用法及讲解
- 应用层协议之CCNA必备知识点精髓
- python print_Python print()
- 2019刚开年全球天气已“爆表” 多国极端天气打破历史纪录
- 《Redis视频教程》(p6)
- 人类为什么不会被人工智能取代?
- Word操作系列-给方框打钩
- Linux实战(20):Docker部署EKL入门环境记录文档
- linux中如何压缩目录文件,如何在Linux中压缩和解压缩目录及其文件
- 贪婪洞窟2服务器维护,《贪婪洞窟2》停服维护更新内容介绍 24日停机维护更新哪些内容...
- 计算机管理无法打开权限不足,win10 打不开软件管理员权限不够
- 封装chrome镜像
热门文章
- MDPI期刊的latex模板使用bib快速导入参考文献(TeXstudio)一个更快更简单的方法!
- fedora22+操作系统安装Steam
- 2017-2018-2 20179207 《网络攻防技术》第六周作业
- 整合线上、线下资源,电商宝私有云大型电商平台助力企业实现新零售!
- java姓名排序_java、android拼音,中文姓名排序
- 复产复工后,这些消防安全知识你知道几条
- 自定义制作音频播放器_使用HTML5制作音频播放器,第3部分:微数据和皮肤
- 《塞洛特傳說》NPC系统
- NVIDA GTX2080 Ubuntu18.04 cuda10.0 cudnn7.5 tensorflow 1.12 install
- “数据信托”探析:基于数据治理与数据资产化的双重视角