【数据分析】有关DataFrame的知识(2)

DataFrame的属性,与Series非常相似。

DataFrame的3种常用属性如下:

1. dtypes

2. values

3. index

即:

DataFrame的3种常用属性:

dtypes

我们知道,DataFrame对象有多列数据,数据类型也是:字符串型、整型、浮点型、布尔型。

我们访问DataFrame对象的dtypes属性,会返回DataFrame对象每一列的数据类型。

Pandas 中,dtype(数据类型)用于描述 Series  DataFrame 中数据的类型。Object  dtype 中表示该列或 Series 中的数据类型是通用的 Python 对象。这通常意味着该列可以包含各种不同的数据类型(例如字符串、数字、列表、甚至其他自定义对象)。

示例:

我们通过访问DataFrame对象的dtypes属性,返回了变量df的每一列数据的数据类型,将其输出。

根据输出可以看到,变量df的'rank'和'GDP'两列的数据类型都为整型。

import pandas as pd

# 定义一个字典和一个列表

data = {'rank':[1, 2, 3, 4],'GDP':[80855, 77388, 68024, 47251]}

city = ['GD','JS','SD','ZJ']

# 使用DataFrame构造函数,传入参数:字典data作为values和columns,列表city作为index

# 构造出的DataFrame赋值给df

df = pd.DataFrame(data, index=city)

# 用print输出变量df的每一列数据的数据类型

print(df.dtypes)

DataFrame一般有多列数据,所以返回DataFrame对象的数据类型的后缀:.dtypes

 values

我们访问DataFrame对象的values属性,会数组的形式返回DataFrame对象的值values。

示例中:

我们通过访问DataFrame对象的values属性,返回了变量df的值values,并将其输出。

根据输出可以看到,以数组的形式返回了变量df的值values。

注意:DataFrame是二维的数据结构,所以返回二维数组。

import pandas as pd

# 定义一个字典和一个列表

data = {'rank':[1, 2, 3, 4],'GDP':[80855, 77388, 68024, 47251]}

city = ['GD','JS','SD','ZJ']

# 使用DataFrame构造函数,传入参数:字典data作为values和columns,列表city作为index

# 构造出的DataFrame赋值给df

df = pd.DataFrame(data, index=city)

# 用print输出变量df的每一列数据的值

print(df.values)

返回DataFrame对象的值values的后缀:.values

index

同理,我们访问DataFrame的index属性,可以获取它的行索引index。

示例:

我们通过访问DataFrame对象的index属性,返回了变量df的行索引index,将其输出。

根据输出可以看到,返回了变量df的索引index,即变量city所存储的列表的值。

import pandas as pd

data = {'rank':[1, 2, 3, 4],'GDP':[80855, 77388, 68024, 47251]}

city = ['GD','JS','SD','ZJ']

df = pd.DataFrame(data, index=city)

#用print输出变量df的行索引

print(df.index)

结果:

Index(['GD', 'JS', 'SD', 'ZJ'], dtype='object')

返回DataFrame对象的行索引index的后缀:.index

修改index

在使用index属性获取到一个对象的index后,我们可以通过对其值,来改变它的index。

示例中,df的index传入了列表city,将df输出进行查看;

然后,将df的index改为列表city_CN的值,并将此时的df输出进行查看:

import pandas as pd

# 定义一个字典和一个列表

data= {'rank':[1, 2, 3, 4],'GDP':[80855, 77388, 68024, 47251]}

city= ['GD','JS','SD','ZJ']

# 使用DataFrame构造函数,传入参数:字典data作为values和columns,列表city作为index

# 构造出的DataFrame赋值给df

df= pd.DataFrame(data, index=city)

# 定义一个新的列表city_CN

city_CN = ['广东','江苏','山东','浙江']

# TODO 将新列表city_CN赋值给df的index

df.index = city_CN

# 用print输出此时的df

print(df)

因为DataFrame是一个二维的数据结构。因此,它有一个新的属性:轴(axis)。

DataFrame的轴

轴(axis),是用来为超过一维的数组定义属性。

二维数组有两个轴,三维数组有三个轴,以此类推。

对于DataFrame而言:

第0轴垂直向下,即axis=0是垂直方向进行操作;

第1轴水平向右,即axis=1是水平方向进行操作。

举一个例子:

如果要按行或者按列来对DataFrame内的数据进行求和,可以使用sum()函数。

那么在sum()函数中,就可以使用axis参数来指定求和的方向。

右侧展示了:

axis=0时,是在垂直的方向上进行求和操作;

axis=1时,是在水平的方向上进行求和操作。

DataFrame进行df.mean(axis=0)操作的运行结果

axis=0是垂直方向进行处理,处理后是浮点数的数据类型,dtype是float64。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值