pandas库中dataframe数据结构的常用方法

文章初衷

本文与文章pandas库中series数据结构的常用方法的总结初衷相同,即将dataframe的数据结构和常用方法提供给包括笔者在内的广大读者,以便大家快捷地使用和参考。dataframe这个数据结构被广泛应用于表的各种操作。在python数据分析中,几乎离不开dataframe这种数据结构。

案例引入包

import numpy as np
import pandas as pd

pandas.core.frame.DataFrame的代码组成

pandas.DataFrame(data,index,dtype,columns)

data:数据可以为list()、np.array()、dict()。

index:索引,其长度必须与数据长度相同。该参数默认行索引:0、1、2、...

dtype:数据类型。

columns:表的列名/列标签。该参数默认列标签:0、1、2、...

pandas.core.frame.DataFrame的创建方式

方式1

list1 = [['张三', 23, '男'], ['李四', 27, '女'], ['王二', 26, '女']]
df1 = pd.DataFrame(data=list1, columns=['姓名', '年龄', '性别'])
df1

image

方式2

df2 = pd.DataFrame(data={'姓名':['张三','李四','王二'],'年龄':[23,27,26],'性别':['男','女','女']})
df2

image

方式3

array1 = np.array([['张三', 23, '男'], ['李四', 27, '女'], ['王二', 26, '女']])
df3 = pd.DataFrame(data=array1, columns=['姓名', '年龄', '性别'], index=['a','b','c'])
df3

image

方式N

# 在满足dataframe数据结构规则的情况下,创建所需的dataframe结构

获取行索引标签/行标题

df3.index
Index(['a', 'b', 'c'], dtype='object')
df3.index.tolist()
['a', 'b', 'c']

获取列标签/列标题

df3.columns
Index(['姓名', '年龄', '性别'], dtype='object')
df3.columns.tolist()
['姓名', '年龄', '性别']

获取dataframe表的各种信息

表的维度

df3.ndim
2

表的形状

df3.shape
(3, 3)

表的元素个数

df3.size
9

表中每列的数据类型

df1.dtypes
姓名    object
年龄     int64
性别    object
dtype: object
df2.dtypes
姓名    object
年龄     int64
性别    object
dtype: object
df3.dtypes
姓名    object
年龄    object
性别    object
dtype: object

强调事项

关于表的数据类型

  • 问题的提出:虽然以上3种创建dataframe的表类似,但每列的数据类型会被承载它们的容器影响。
  • 举个例子:df3的’年龄’这个列标签,由于承载它的容器是一个numpy数组,返回成表时被默认为object类型。而其他两种创建方式均将该列标签的数据类型默认成int64。
  • 强烈建议:为了表格能够更准确地标注其数据类型,建议使用创建df2的方法。即使用dict()作为容器创建dataframe。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
pandasDataFrame函数是用来创建和操作二维数据结构的。DataFrame可以看作是一个表格,类似于数据的表或Excel的工作表。它由行索引和列索引组成,可以存储和处理大量的数据。 DataFrame函数可以接受不同类型的输入数据,包括列表、字典、Series和其他DataFrame。它可以用于数据分析、数据清洗、数据处理和数据可视化等任务。 以下是DataFrame函数的一些常用功能: - 创建DataFrame对象:可以通过传入字典、列表、Numpy数组等不同类型的数据来创建DataFrame对象。 - 访问和修改数据:可以使用行索引和列索引来访问和修改DataFrame的数据。可以通过标签或位置索引进行访问,也可以使用切片操作选择特定的行或列。 - 处理缺失数据:DataFrame提供了方法来处理缺失数据,例如使用fillna()函数填充缺失值或使用dropna()函数删除包含缺失值的行或列。 - 进行数据转换:可以使用DataFrame提供的方法进行数据转换,例如使用apply()函数对每一列或每一行应用自定义函数,或使用map()函数对某一列进行映射操作。 - 数据排序和过滤:可以使用sort_values()函数对DataFrame的数据进行排序,也可以使用条件过滤来选择满足特定条件的行或列。 - 数据统计和汇总:DataFrame提供了各种方法来计算统计信息,例如sum()、mean()、max()、min()等,还可以使用groupby()函数进行分组统计。 - 数据合并和连接:可以使用merge()和concat()函数将多个DataFrame对象合并或连接成一个新的DataFrame

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值