首页 > 其他分享 >pd.DataFrame知识

pd.DataFrame知识

时间:2024-11-09 21:46:24浏览次数:3  
标签:Name df Age 知识 DataFrame pd data

pd.DataFramepandas库中用于处理二维数据结构(表格型数据)的一个重要类。以下是关于它的详细介绍:

一、创建 DataFrame 对象

  1. 从列表创建
    • 可以使用一个嵌套的列表来创建DataFrame。例如:
      import pandas as pd
      data = [['Alice', 25], ['Bob', 30]]
      df = pd.DataFrame(data, columns=['Name', 'Age'])

      在这个例子中,data是一个包含两个子列表的列表,每个子列表代表一行数据。columns参数用于指定列名,这样就创建了一个具有两列(NameAge)的DataFrame

  2.  从字典创建        
    • 使用字典来创建DataFrame是一种很常见的方式。字典的键将成为列名,值为对应的列数据。例如:
      data_dict = {'Name': ['Charlie', 'David'], 'Age': [35, 40]}
      df = pd.DataFrame(data_dict)

      这里的data_dict字典有两个键NameAge,每个键对应一个包含两个元素的列表,用于创建一个包含两行两列的DataFrame

  3. 读取外部数据创建

    • pandas支持从多种文件格式(如 CSV、Excel、SQL 数据库等)读取数据并创建DataFrame。以读取 CSV 文件为例:
      df = pd.read_csv('data.csv')

      假设data.csv文件存在于当前目录下,read_csv函数会读取文件内容并将其转换为DataFrame对象。

二、DataFrame 的基本属性和方法

  1. 属性
    • shape属性:返回一个元组,表示DataFrame的行数和列数。例如df.shape将返回(行数, 列数)
    • columns属性:返回列名的索引对象。可以通过df.columns查看列名列表,并且可以对其进行修改来重命名列。
    • index属性:返回行索引对象。默认情况下,行索引是从 0 开始的整数序列,但可以根据需要进行设置和修改。
  2. 方法
    • head()tail()方法:用于查看DataFrame的前几行(head())和后几行(tail())数据。例如df.head(3)会返回DataFrame的前三行,这在快速查看数据结构时非常有用。
    • describe()方法:用于计算DataFrame中数值列的基本统计信息,如计数、均值、标准差、最小值、四分位数和最大值等。例如df.describe()会生成一个包含这些统计信息的新DataFrame
    • sort_values()方法:用于按照指定列的值对DataFrame进行排序。例如df.sort_values(by='Age', ascending=False)会按照Age列的值对DataFrame进行降序排序。

三、数据访问和操作

  1. 按列访问
    • 可以通过列名来访问DataFrame中的列。例如df['Name']将返回Name列的数据,返回的数据类型是pandas.Series。也可以通过df.Name来访问列(前提是列名是合法的 Python 变量名)。
    • 可以对列进行修改。例如df['Age'] = df['Age'] + 1会将Age列的每个元素都加 1。
  2. 按行访问
    • 可以使用iloc(基于整数位置)和loc(基于标签)来访问行。例如df.iloc[0]会返回第一行数据(以Series形式),df.loc[0]在默认行索引为整数且从 0 开始的情况下也返回第一行数据。
    • 可以使用切片操作来获取多行数据。例如df.iloc[0:2]会返回前两行数据。
  3. 条件筛选
    • 可以根据条件来筛选DataFrame中的数据。例如df[df['Age'] > 30]会返回Age列中大于 30 的行组成的DataFrame

pd.DataFramepandas中非常强大的数据结构,在数据处理、分析和可视化等任务中都有广泛的应用。

 

标签:Name,df,Age,知识,DataFrame,pd,data
From: https://blog.csdn.net/m0_52951519/article/details/143622842

相关文章

  • np.random.randint知识点
    函数概述np.random.randint是NumPy库中的一个函数,用于生成随机整数。它可以在指定的区间(左闭右开)内生成一个或多个随机整数。函数语法np.random.randint(low,high=None,size=None,dtype='l')参数解释:low:生成的随机整数的最小值(包含该值)。如果high为None,则low为......
  • 知识点:动态规划
    知识点:该题目考察的知识点是动态规划,特别是用于计算两个字符串之间的编辑距离(Levenshtein距离)。编辑距离是衡量两个字符串相似度的一种方法,它定义为将一个字符串转换为另一个字符串所需的最少操作次数,这些操作包括插入、删除和替换字符。动态规划的相关内容:动态规划是一种算法策......
  • 知识点:算法策略
    知识点:在软考中,常考的算法策略包括分治法、动态规划法、贪心法、回溯法等。下面详细介绍这些算法策略的原理、适用场景以及算法复杂度:1.分治法原理:分治法是将一个复杂的问题分解成若干个相同或相似的子问题,递归解决子问题,然后将子问题的解合并以解决原问题。适用场景:适用于可......
  • 特朗普重点关注人工智能,我国的AI知识库行业有何机遇和挑战?
    近年来,人工智能(AI)技术的迅猛发展已经成为全球科技竞争的焦点。在美国,特朗普曾多次表示对人工智能技术的重视,并计划加大在该领域的投资,以巩固美国的科技领先地位。这一趋势不仅影响了国际科技格局,也为我国AI知识库行业带来了新的机遇和挑战。一、特朗普对人工智能的关注特......
  • 改造pdf.js源码,实现业务系统对PDF阅读器的集成(一)——概览与pdf.js启动流程分析
    项目背景最近收到了客户的一个订单——他们想要在自己的系统里面增加一套基于文档的审批流程。审批流程的逻辑是这样的:首先被审批人会发起审批流,并上传相关的Word或PDF文档。这个审批流在进入审批状态后,将会被一个或多个审批人审批。审批人可以在被审批人上传的PDF文档上增加......
  • 坐标系相关知识科普
    四/七参数计算方法及"傻瓜式"转换流程坐标转换隶属于"大地测量学"的范畴,而大地测量学呢,又是整个测绘学科中最基础、最重要,但知识的理论性最强的一门学科。今天呢,测绘营地将尽量用通俗易懂的语言为大家讲解一下坐标系的区别、几种转换方式、中央子午线的确定等等基本科普知识,然后......
  • day1_背景知识
    1.提高代码能力:类名使用大驼峰命名法标识符见名知意2.单占位符的格式化输出age=1str1='小李今年%d岁了'%age#占位符是字符串的特性,与print()函数无关print(str1)3.多占位符的格式化输出name='张强'age=1gender='女'print('学员的名字是%s,年龄......
  • pdb和gdb的双剑合璧,在python中调试c代码
    左手编程,右手年华。大家好,我是一点,关注我,带你走入编程的世界。公众号:一点sir,关注领取python编程资料问题背景正常情况下,调试python代码用pdb,调试c代码用gdb,而有些python模块是用c语言来实现的,在python中调用了这个c语言实现的模块,而入口又在python这边,那么单独使用pdb或者gdb......
  • 网络安全技术概论知识点
    目录第一章网络安全基础知识点例题第二章网络安全技术基础知识点第三章网络安全体系管理知识点例题第四章黑客攻防与检测防御知识点例题第五章、第六章第七章计算机及手机病毒防范例题第八章防火墙技术知识点第九章操作系统安全第十章数据库及数据安全知识点第......
  • VMware vSphere 6.7 Update 3w 下载
    VMwarevSphere6.7Update3w下载ESXi6.7U3&vCenterServer6.7U3,Dell,HPE,LENOVO,InspurCustomImage请访问原文链接:https://sysin.org/blog/vmware-vsphere-6/查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgVMwarevCenterServer6.7Update3w,2......