2_数据分析—认识pandas
文章目录
- 一、认识 pandas
- 1.1 pandas有两个数据类型DateFrame和Series
- 1.2 载入数据
- 1.3 查看DataFrame数据的每列的名称
- 1.4 查看"Cabin"这列的所有值
- 1.4.1 方法一
- 1.4.2 方法二
- 1.5 对比两个文件,将多出的列删除
- 1.5.1 方法一
- 1.5.2 方法二
- 1.6 隐藏元素
- 二、筛选数据
- 2.1 我们以"Age"为筛选条件,显示年龄在10岁以下的乘客信息。
- 2.2 以"Age"为条件,将年龄在10岁以上和50岁以下的乘客信息显示出来,并将这个数据命名为midage
- 2.3 将特定行数据显示出来
- 2.3.1 将midage的数据中第100行的"Pclass"和"Sex"的数据显示出来
- 2.3.2 使用loc方法将midage的数据中第100,105,108的"Pclass","Name"和"Sex"的数据显示出来
- 2.3.3 使用iloc方法将midage的数据中第100,105,108的"Pclass","Name"和"Sex"的数据显示出来
- 2.3.3.1 对比`iloc`和`loc`的异同!
一、认识 pandas
1.1 pandas有两个数据类型DateFrame和Series
import numpy as np
import pandas as pd
sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
example_1 = pd.Series(sdata)
example_1
Ohio 35000 Texas 71000 Oregon 16000 Utah 5000 dtype: int64
data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada', 'Nevada'],'year': [2000, 2001, 2002, 2001, 2002, 2003],'pop': [1.5, 1.7, 3.6, 2.4, 2.9, 3.2]}
example_2 = pd.DataFrame(data)
example_2
1.2 载入数据
df = pd.read_csv('/Users/chenandong/Documents/datawhale数据分析每个人题目设计/titanic/train.csv')
df.head(3)
1.3 查看DataFrame数据的每列的名称
df.columns
Index(['PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age', 'SibSp','Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked'],dtype='object')
1.4 查看"Cabin"这列的所有值
1.4.1 方法一
df['Cabin'].head(3)
0 NaN 1 C85 2 NaN 3 C123 4 NaN Name: Cabin, dtype: object
1.4.2 方法二
df.Cabin.head(3)
0 NaN 1 C85 2 NaN 3 C123 4 NaN Name: Cabin, dtype: object
1.5 对比两个文件,将多出的列删除
经过我们的观察发现一个测试集test_1.csv有一列是多余的,我们需要将这个多余的列删去
test_1 = pd.read_csv('test_1.csv')
test_1.head(3)
1.5.1 方法一
# 删除多余的列
del test_1['a']
test_1.head(3)
1.5.2 方法二
# 删除多余的列
df = test_1.drop(columns=['a'])
df.head(3)
1.6 隐藏元素
将[‘PassengerId’,‘Name’,‘Age’,‘Ticket’]这几个列元素隐藏,只观察其他几个列元素
df.drop(['PassengerId','Name','Age','Ticket'],axis=1).head(3)
【思考回答】
如果想要完全的删除你的数据结构,使用inplace=True,因为使用inplace就将原数据覆盖了,所以这里没有用
二、筛选数据
表格数据中,最重要的一个功能就是要具有可筛选的能力,选出我所需要的信息,丢弃无用的信息。
2.1 我们以"Age"为筛选条件,显示年龄在10岁以下的乘客信息。
df[df["Age"]<10].head(3)
2.2 以"Age"为条件,将年龄在10岁以上和50岁以下的乘客信息显示出来,并将这个数据命名为midage
midage = df[(df["Age"]>10)& (df["Age"]<50)]
midage.head(3)
2.3 将特定行数据显示出来
2.3.1 将midage的数据中第100行的"Pclass"和"Sex"的数据显示出来
midage = midage.reset_index(drop=True) # 重新设置索引
midage.head(3)
【思考】这个reset_index()函数的作用是什么?如果不用这个函数,下面的任务会出现什么情况?
作用:使用索引重置生成一个新的DataFrame或Series,可以把索引用作列。如果不想保留原来的index,使用参数drop=True,重新排序。默认参数为False。
midage.loc[[100],['Pclass','Sex']]
Pclass Sex 100 2 male
2.3.2 使用loc方法将midage的数据中第100,105,108的"Pclass","Name"和"Sex"的数据显示出来
midage.loc[[100,105,108],['Pclass','Name','Sex']]
2.3.3 使用iloc方法将midage的数据中第100,105,108的"Pclass","Name"和"Sex"的数据显示出来
midage.iloc[[100,105,108],[2,3,4]]
2.3.3.1 对比iloc
和loc
的异同!
data=DataFrame(np.arange(16).reshape(4,4),index=list("ABCD"),columns=list("wxyz"))
print(data)w x y z
A 0 1 2 3
B 4 5 6 7
C 8 9 10 11
D 12 13 14 15
- loc——通过行标签索引行数据
print(data.loc["A"])
w 0 x 1 y 2 z 3
- iloc——通过行号索引行数据
print(data.iloc[0])
w 0 x 1 y 2 z 3
2_数据分析—认识pandas相关推荐
- pandas object转float_数据分析篇 | Pandas基础用法6【完结篇】
这是最后一篇,至此Pandas系列终于连载完了,有需要的也可以看看前面6篇,尽请收藏. 数据分析篇 | Pandas 概览 数据分析篇 | Pandas基础用法1数据分析篇 | Pandas基础用法2 ...
- 数据分析工具Pandas(7):数据清洗、合并、转化和重构
数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 数据分析工具Pandas(4): ...
- 数据分析工具Pandas(6):Pandas统计计算和描述
数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 数据分析工具Pandas(4): ...
- 数据分析工具Pandas(4):Pandas的函数应用
数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 数据分析工具Pandas(4): ...
- 数据分析工具Pandas(3):Pandas的对齐运算
数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 Pandas的对齐运算 是数据清 ...
- 数据分析工具Pandas(2):Pandas的索引操作
数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 Pandas的索引操作 索引对象Index 1. Series和DataFrame中的索 ...
- pandas 排序 给excel_懂Excel轻松入门Python数据分析包pandas(二十五):循环序列分组...
此系列文章收录在公众号中:数据大宇宙 > 数据处理 >E-pd 转发本文并私信我"python",即可获得Python资料以及更多系列文章(持续更新的) 经常听别人说 ...
- pandas 排序_懂Excel就能轻松入门Python数据分析包pandas(六):排序
转发本文并私信我"python",即可获得Python资料以及各种心得(持续更新的) 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来 ...
- python常用命令汇总-python数据分析之pandas常用命令整理
原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...
最新文章
- cisco 6509交换配置
- 网络对抗技术_实验二_网络嗅探与欺骗
- python ui自动化_pythonUI自动化整理
- vue-cli简单使用心得
- Java EE 8的前5个新功能
- golang time包梳理
- 三分钟教你用 Scarlet 写一个 WebSocket App
- 怎么运行java虚拟机_Java代码如何运行在Java虚拟机中
- VB/VBA中实现数据库与文件的存取
- 使用php递归计算目录大小
- 最小费用最大流背诵用模板
- (29)System Verilog设计SPI接收
- SQL_SERVER 导oracle(转)
- 锁定文件失败 打不开磁盘“E:\HP02\HP01-cl1.vmdk”或它所依赖的某个快照磁盘。 模块“Disk”启动失败。 未能启动虚拟机
- Ubuntu16.04在Wine-3.0平台安装最新版TIM(QQ),不折腾那些没用的!
- String 常用方法总结
- ABP框架----写一个WebAPI
- OSError: dlopen
- android 自定义textview圆形,Android 自定义TextView可以设置圆角和按下效果
- 猫和老鼠服务器正在修复中,猫和老鼠手游:关于29日在游戏中出现的异常问题 是暗改还是bug?...
热门文章
- matlab求奶制品,数学建模案例之线性规划.ppt
- 2021年11月国产数据库排行榜:openGauss闯入前三,Kingbase流行度与日俱增,TDengine厚积薄发
- 下载丨9月数据库技术通讯:Redo日志丢失,重建遭遇ORA-16433处理
- DBA/运维人员近期直播活动日历
- 2019年11月数据库流行度排行:前三甲大幅下跌 PM 应云而升 国产续领风云
- 3种双集群系统方案设计模式详解
- 【华为云技术分享】【DevCloud · 敏捷智库】如何利用核心概念解决估算常见问题
- 【华为云技术分享】【昇腾】ModelArts与Atlas 200 DK云端协同开发——行人检测Demo(提供完整Demo)
- 【华为云技术分享】云小课 | OBS提供多方面数据安全保障,让存储放心、贴心、省心
- SpringBoot与安全