2_数据分析—认识pandas

简介: 2_数据分析—认识pandas

一、认识 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


c0777f6d416ecd01fe2520f9265cbb88.png


1.2 载入数据


df = pd.read_csv('/Users/chenandong/Documents/datawhale数据分析每个人题目设计/titanic/train.csv')
df.head(3)


03008b764b63c3d9d6ae79c304e86f08.png

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)


217cf2452d3bb2fdfe78952b58ed9e15.png

1.5.1 方法一


# 删除多余的列
del test_1['a']
test_1.head(3)


9919886869b3269077a20cedadeaebab.png

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)


7d17d1bbff6900ca61f6166925e751f2.png

【思考回答】


如果想要完全的删除你的数据结构,使用inplace=True,因为使用inplace就将原数据覆盖了,所以这里没有用


二、筛选数据


表格数据中,最重要的一个功能就是要具有可筛选的能力,选出我所需要的信息,丢弃无用的信息。


2.1 我们以"Age"为筛选条件,显示年龄在10岁以下的乘客信息。


df[df["Age"]<10].head(3)

db146bb41cd491088dfac419f9735d9e.png

2.2 以"Age"为条件,将年龄在10岁以上和50岁以下的乘客信息显示出来,并将这个数据命名为midage


midage = df[(df["Age"]>10)& (df["Age"]<50)]
midage.head(3)

105c2a010d19a0243f022924363b2c60.png

2.3 将特定行数据显示出来


2.3.1 将midage的数据中第100行的"Pclass"和"Sex"的数据显示出来


midage = midage.reset_index(drop=True)   # 重新设置索引
midage.head(3)


7859454c30099e6020802d41c1fcdf87.png

思考】这个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']]


d814d0a850d43d8617bed43c0fdd9709.png

2.3.3 使用iloc方法将midage的数据中第100,105,108的"Pclass","Name"和"Sex"的数据显示出来


midage.iloc[[100,105,108],[2,3,4]]


4e6d73025f1a65a694b4930951660a53.png

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
目录
相关文章
|
2月前
|
自然语言处理 数据挖掘 数据处理
告别低效代码:用对这10个Pandas方法让数据分析效率翻倍
本文将介绍 10 个在数据处理中至关重要的 Pandas 技术模式。这些模式能够显著减少调试时间,提升代码的可维护性,并构建更加清晰的数据处理流水线。
138 3
告别低效代码:用对这10个Pandas方法让数据分析效率翻倍
|
9月前
|
数据采集 数据可视化 数据挖掘
Pandas数据应用:天气数据分析
本文介绍如何使用 Pandas 进行天气数据分析。Pandas 是一个强大的 Python 数据处理库,适合处理表格型数据。文章涵盖加载天气数据、处理缺失值、转换数据类型、时间序列分析(如滚动平均和重采样)等内容,并解决常见报错如 SettingWithCopyWarning、KeyError 和 TypeError。通过这些方法,帮助用户更好地进行气候趋势预测和决策。
301 71
|
10月前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
307 0
|
9月前
|
存储 数据采集 数据可视化
Pandas数据应用:电子商务数据分析
本文介绍如何使用 Pandas 进行电子商务数据分析,涵盖数据加载、清洗、预处理、分析与可视化。通过 `read_csv` 等函数加载数据,利用 `info()` 和 `describe()` 探索数据结构和统计信息。针对常见问题如缺失值、重复记录、异常值等,提供解决方案,如 `dropna()`、`drop_duplicates()` 和正则表达式处理。结合 Matplotlib 等库实现数据可视化,探讨内存不足和性能瓶颈的应对方法,并总结常见报错及解决策略,帮助提升电商企业的数据分析能力。
376 73
|
8月前
|
存储 数据采集 数据可视化
Pandas数据应用:医疗数据分析
Pandas是Python中强大的数据操作和分析库,广泛应用于医疗数据分析。本文介绍了使用Pandas进行医疗数据分析的常见问题及解决方案,涵盖数据导入、预处理、清洗、转换、可视化等方面。通过解决文件路径错误、编码不匹配、缺失值处理、异常值识别、分类变量编码等问题,结合Matplotlib等工具实现数据可视化,并提供了解决常见报错的方法。掌握这些技巧可以提高医疗数据分析的效率和准确性。
248 22
|
9月前
|
数据采集 数据可视化 索引
Pandas数据应用:股票数据分析
本文介绍了如何使用Pandas库进行股票数据分析。首先,通过pip安装并导入Pandas库。接着,从本地CSV文件读取股票数据,并解决常见的解析错误。然后,利用head()、info()等函数查看数据基本信息,进行数据清洗,处理缺失值和重复数据。再者,结合Matplotlib和Seaborn进行数据可视化,绘制收盘价折线图。最后,进行时间序列分析,设置日期索引、重采样和计算移动平均线。通过这些步骤,帮助读者掌握Pandas在股票数据分析中的应用。
357 5
|
10月前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
219 2
|
10月前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
214 2
|
11月前
|
机器学习/深度学习 数据采集 算法
探索Python科学计算的边界:NumPy、Pandas与SciPy在大规模数据分析中的高级应用
【10月更文挑战第5天】随着数据科学和机器学习领域的快速发展,处理大规模数据集的能力变得至关重要。Python凭借其强大的生态系统,尤其是NumPy、Pandas和SciPy等库的支持,在这个领域占据了重要地位。本文将深入探讨这些库如何帮助科学家和工程师高效地进行数据分析,并通过实际案例来展示它们的一些高级应用。
242 0
探索Python科学计算的边界:NumPy、Pandas与SciPy在大规模数据分析中的高级应用
|
10月前
|
数据采集 数据可视化 数据挖掘
Python数据分析:Pandas库实战指南
Python数据分析:Pandas库实战指南

热门文章

最新文章