Pandas DataFrame的基本属性详解

Pandas DataFrame的基本属性详解PandasDataFrame的一些基本属性基本功能列表importpandasaspd导入库df=pd.DataFrame(data=None,index=None,columns=None,dtype=None,copy=False)创建一个DataFramedf.indexdf.columnsdf.axesdf.Tdf.info()…

大家好,又见面了,我是你们的朋友全栈君。

注:以下代码均在Jupyter中运行的。

基本功能列表

import pandas as pd 导入库

df = pd.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
创建一个DataFrame

代码 功能
DataFrame() 创建一个DataFrame对象
df.values 返回ndarray类型的对象
df.iloc[ 行序,列序 ] 按序值返回元素
df.loc[ 行索引,列索引 ] 按索引返回元素
df.index 获取行索引
df.columns 获取列索引
df.axes 获取行及列索引
df.T 行与列对调
df. info() 打印DataFrame对象的信息
df.head(i) 显示前 i 行数据
df.tail(i) 显示后 i 行数据
df.describe() 查看数据按列的统计信息

创建一个DataFrame

DataFrame()函数的参数index的值相当于行索引,若不手动赋值,将默认从0开始分配。columns的值相当于列索引,若不手动赋值,也将默认从0开始分配。

data = { 
   
        '性别':['男','女','女','男','男'],
        '姓名':['小明','小红','小芳','大黑','张三'],
        '年龄':[20,21,25,24,29]}
df = pd.DataFrame(data,index=['one','two','three','four','five'],
               columns=['姓名','性别','年龄','职业'])
df

运行结果:
在这里插入图片描述

df.values 返回ndarray类型的对象

ndarray类型即numpy的 N 维数组对象,通常将DataFrame类型的数据转换为ndarray类型的比较方便操作。如对DataFrame类型进行切片操作需要df.iloc[ : , 1:3]这种形式,对数组类型直接X[ : , 1:3]即可。

X = df.values
print(type(X)) #显示数据类型
X

运行结果:

<class 'numpy.ndarray'>
[['小明' '男' 20 nan]
 ['小红' '女' 21 nan]
 ['小芳' '女' 25 nan]
 ['大黑' '男' 24 nan]
 ['张三' '男' 29 nan]]

df.iloc[ 行序,列序 ] 按序值返回元素

df.iloc[1,1]

运行结果:

Index(['one', 'two', 'three', 'four', 'five'], dtype='object')

df.loc[ 行索引,列索引 ] 按索引返回元素

df.loc['one','性别']

运行结果:

df.index 获取行索引

df.index

运行结果:

Index(['one', 'two', 'three', 'four', 'five'], dtype='object')

df.columns 获取列索引

df.columns

运行结果:

Index(['姓名', '性别', '年龄', '职业'], dtype='object')

df.axes 获取行及列索引

df.axes

运行结果:

[Index(['one', 'two', 'three', 'four', 'five'], dtype='object'),
 Index(['姓名', '性别', '年龄', '职业'], dtype='object')]

df.T index 与 columns 对调

df.T

运行结果:
在这里插入图片描述

df.info() 打印DataFrame对象的信息

df.info()

运行结果:

<class 'pandas.core.frame.DataFrame'>
Index: 5 entries, one to five
Data columns (total 4 columns):
姓名    5 non-null object
性别    5 non-null object
年龄    5 non-null int64
职业    0 non-null object
dtypes: int64(1), object(3)
memory usage: 200.0+ bytes

df.head(i) 显示前 i 行数据

df.head(2)

运行结果:
在这里插入图片描述
若想要显示前几列数据,可用df.T.head(i)

df.tail(i) 显示后 i 行数据

df.tail(2)

运行结果:
在这里插入图片描述

df.describe() 查看数据按列的统计信息

可显示数据的数量、缺失值、最小最大数、平均值、分位数等信息

             年龄
count   5.000000
mean   23.800000
std     3.563706
min    20.000000
25%    21.000000
50%    24.000000
75%    25.000000
max    29.000000
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137759.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月5日 下午7:40
下一篇 2022年5月5日 下午7:40


相关推荐

  • Latex插入图片参数设置

    Latex插入图片参数设置常用选项[htbp]是浮动格式:『h』当前位置。将图形放置在正文文本中给出该图形环境的地方。如果本页所剩的页面不够,这一参数将不起作用。『t』顶部。将图形放置在页面的顶部。『b』底部。将图形放置在页面的底部。『p』浮动页。将图形放置在一只允许有浮动对象的页面上。一般使用[htb]这样的组合,只用[h]是没有用的。这样组合的意思就是latex会尽量满足排在前面的浮动格式,就是h-t-b这个…

    2022年5月31日
    42
  • 八皇后问题详解(四种解法)[通俗易懂]

    八皇后问题详解(四种解法)[通俗易懂]如果你去百度百科八皇后这个问题,你会发现人家也是历史上有头有脸的一个问题,最后一句“计算机发明后就有一万种方式解决这个问题”读起来也让程序猿们很快活。闲话少说,开始阐述我的思路:最无脑的解法一定是八个for遍历,浪费了太多的计算资源在各种无用功上面,我们稍微构思一下:首先如何决定下一个皇后能不能放这里可以有两种思路,第一种是尝试维护一个8*8的二维矩阵,每次找到一个空位放下一个皇后就把对应行列对

    2022年6月30日
    28
  • 项目中更新Stimulsoft组件的方法

    项目中更新Stimulsoft组件的方法我们正在不断开发我们的软件。我们的主要目标是成为软件工程的前沿。每个版本均包含新功能,组件优化和错误修复。这就是为什么新发行版始终是先前版本的产品改进的原因。但是,并非所有用户都知道在他们的项目中更新

    2022年7月4日
    29
  • [ext4]09 磁盘布局 – superblock备份机制

    [ext4]09 磁盘布局 – superblock备份机制如果 sparse super 特性 flag 被设置 即开启了 sparse super 特性 那么 super block 和组描述符的副本只会保存在 group 索引为 0 或 3 5 7 的整数幂 如果没有设置 sparse super 特性 flag super block 和组描述符的副本将保存在每一个 group 中

    2025年6月14日
    4
  • 开源2天狂揽1K Star!基于Nano Banana Pro的小红书图文生成器!

    开源2天狂揽1K Star!基于Nano Banana Pro的小红书图文生成器!

    2026年3月17日
    2
  • java创建数组的两种方法

    java创建数组的两种方法java 创建数组的两种方法 1 静态初始化 int array 1 2 3 4 5 2 动态初始化 1 先分配空间再给数组元素赋值 int array newint 10 需指定数组中的元素个数 for inti 0 i

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号