python中pandas是指什么_Python pandas用法

Python的pandas库是数据分析的重要工具,提供了高效的数据结构如Series和DataFrame。Series是一维数据结构,包含数据和索引,可以视为带索引的数组。DataFrame是表格型数据结构,允许不同类型的列并提供了丰富的操作方法,如添加、删除列,以及数据排序和过滤。pandas简化了数据清洗、预处理和分析,如缺失值处理、统计分析和数据分组。它还支持读写多种文本格式数据,如CSV文件。
摘要由CSDN通过智能技术生成

介绍

在Python中,pandas是基于NumPy数组构建的,使数据预处理、清洗、分析工作变得更快更简单。pandas是专门为处理表格和混杂数据设计的,而NumPy更适合处理统一的数值数组数据。

使用下面格式约定,引入pandas包:

import pandas as pd

pandas有两个主要数据结构:Series和DataFrame。

Series

Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成,即index和values两部分,可以通过索引的方式选取Series中的单个或一组值。

Series的创建

pd.Series(list,index=[ ]),第二个参数是Series中数据的索引,可以省略。

第一个参数可以是列表\ndarray

import numpy as np, pandas as pd

arr1 = np.arange(10)

s1 = pd.Series(arr1)

print(s1) #由于我们没有为数据指定索引,于是会自动创建一个0到N-1(N为数据的长度)的整数型索引

0 0

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

第一个参数可以是字典,字典的键将作为Series的索引

第一个参数可以是DataFrame中的某一行或某一列

Series类型的操作

Series类型索引、切片、运算的操作类似于ndarray,同样的类似Python字典类型的操作,包括保留字in操作、使用.get()方法。

Series和ndarray之间的主要区别在于Series之间的操作会根据索引自动对齐数据。

DataFrame

DataFrame是一个表格型的数据类型,每列值类型可以不同,是最常用的pandas对象。DataFrame既有行索引也有列索引,它可以被看做由Series组成的字典(共用同一个索引)。DataFrame中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)。

DataFrame的创建

pd.DataFrame(data,columns = [ ],index = [ ]):columns和index为指定的列、行索引,并按照顺序排列。

创建DataFrame最常用的是直接传入一个由等长列表或NumPy数组组成的字典,会自动加上行索引,字典的键会被当做列索引:

import pandas as pd

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]}

df= pd.DataFrame(data)

In [45]: df

Out[45]:

pop state year

0 1.5 Ohio 2000

1 1.7 Ohio 2001

2 3.6 Ohio 2002

3 2.4 Nevada 2001

4 2.9 Nevada 2002

5 3.2 Nevada 2003

如果创建时指定了columns和index索引,则按照索引顺序排列,并且如果传入的列在数据中找不到,就会在结果中产生缺失值:

In [48]: df2 = pd.DataFrame(data, columns=['year', 'state', 'pop', 'debt'],

....: index=['one', 'two', 'three', 'four', 'five', 'six'])

In [49]: df2

Out[49]:

year state pop debt

one 2000 Ohio 1.5 NaN

two 2001 Ohio 1.7 NaN

three 2002 Ohio 3.6 NaN

four 2001 Nevada 2.4 NaN

five 2002 Nevada 2.9 NaN

six 2003 Nevada 3.2 NaN

另一种常见的创建DataFrame方式是使用嵌套字典,如果嵌套字典传给DataFrame,pandas就会被解释为外层字典的键作为列,内层字典键则作为行索引:

In [65]: pop = {'Nevada': {2001: 2.4, 2002: 2.9},

....: 'Ohio': {2000: 1.5, 2001: 1.7, 2002: 3.6}}

In [66]: df3 = pd.DataFrame(pop)

In [67]: df3

Out[67]:

Nevada Ohio

2000 NaN 1.5

2001 2.4 1.7

2002 2.9 3.6

840ba135df30

7178691-106835b28c0cea5a.png

DataFrame对象操作

df.values:将DataFrame转换为ndarray二维数组,注意后面不加()。

通过类似字典标记的方式或属性的方式,可以将DataFrame的列获取为一个Series。

列可以通过赋值的方式进行修改。例如,我们可以给那个空的"debt"列赋上一个标量值或一组值。</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值