文章目录

  • 一、认识 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 对比ilocloc的异同!

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相关推荐

  1. pandas object转float_数据分析篇 | Pandas基础用法6【完结篇】

    这是最后一篇,至此Pandas系列终于连载完了,有需要的也可以看看前面6篇,尽请收藏. 数据分析篇 | Pandas 概览 数据分析篇 | Pandas基础用法1数据分析篇 | Pandas基础用法2 ...

  2. 数据分析工具Pandas(7):数据清洗、合并、转化和重构

    数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 数据分析工具Pandas(4): ...

  3. 数据分析工具Pandas(6):Pandas统计计算和描述

    数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 数据分析工具Pandas(4): ...

  4. 数据分析工具Pandas(4):Pandas的函数应用

    数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 数据分析工具Pandas(4): ...

  5. 数据分析工具Pandas(3):Pandas的对齐运算

    数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 数据分析工具Pandas(3):Pandas的对齐运算 Pandas的对齐运算 是数据清 ...

  6. 数据分析工具Pandas(2):Pandas的索引操作

    数据分析工具Pandas(1):Pandas的数据结构 数据分析工具Pandas(2):Pandas的索引操作 Pandas的索引操作 索引对象Index 1. Series和DataFrame中的索 ...

  7. pandas 排序 给excel_懂Excel轻松入门Python数据分析包pandas(二十五):循环序列分组...

    此系列文章收录在公众号中:数据大宇宙 > 数据处理 >E-pd 转发本文并私信我"python",即可获得Python资料以及更多系列文章(持续更新的) 经常听别人说 ...

  8. pandas 排序_懂Excel就能轻松入门Python数据分析包pandas(六):排序

    转发本文并私信我"python",即可获得Python资料以及各种心得(持续更新的) 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来 ...

  9. python常用命令汇总-python数据分析之pandas常用命令整理

    原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...

最新文章

  1. cisco 6509交换配置
  2. 网络对抗技术_实验二_网络嗅探与欺骗
  3. python ui自动化_pythonUI自动化整理
  4. vue-cli简单使用心得
  5. Java EE 8的前5个新功能
  6. golang time包梳理
  7. 三分钟教你用 Scarlet 写一个 WebSocket App
  8. 怎么运行java虚拟机_Java代码如何运行在Java虚拟机中
  9. VB/VBA中实现数据库与文件的存取
  10. 使用php递归计算目录大小
  11. 最小费用最大流背诵用模板
  12. (29)System Verilog设计SPI接收
  13. SQL_SERVER 导oracle(转)
  14. 锁定文件失败 打不开磁盘“E:\HP02\HP01-cl1.vmdk”或它所依赖的某个快照磁盘。 模块“Disk”启动失败。 未能启动虚拟机
  15. Ubuntu16.04在Wine-3.0平台安装最新版TIM(QQ),不折腾那些没用的!
  16. String 常用方法总结
  17. ABP框架----写一个WebAPI
  18. OSError: dlopen
  19. android 自定义textview圆形,Android 自定义TextView可以设置圆角和按下效果
  20. 猫和老鼠服务器正在修复中,猫和老鼠手游:关于29日在游戏中出现的异常问题 是暗改还是bug?...

热门文章

  1. matlab求奶制品,数学建模案例之线性规划.ppt
  2. 2021年11月国产数据库排行榜:openGauss闯入前三,Kingbase流行度与日俱增,TDengine厚积薄发
  3. 下载丨9月数据库技术通讯:Redo日志丢失,重建遭遇ORA-16433处理
  4. DBA/运维人员近期直播活动日历
  5. 2019年11月数据库流行度排行:前三甲大幅下跌 PM 应云而升 国产续领风云
  6. 3种双集群系统方案设计模式详解
  7. 【华为云技术分享】【DevCloud · 敏捷智库】如何利用核心概念解决估算常见问题
  8. 【华为云技术分享】【昇腾】ModelArts与Atlas 200 DK云端协同开发——行人检测Demo(提供完整Demo)
  9. 【华为云技术分享】云小课 | OBS提供多方面数据安全保障,让存储放心、贴心、省心
  10. SpringBoot与安全