首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pandas系列 - DataFrame操作

概览 pandas.DataFrame 创建DataFrame 列表 字典 系列(Series) 列选择 列添加 列删除 pop/del 行选择,添加和删除 标签选择 loc 按整数位置选择 iloc...行切片 附加行 append 删除行 drop 数据帧(DataFrame)是二维数据结构,即数据以行和列的表格方式排列 数据帧(DataFrame)的功能特点: 潜在的列是不同的类型 大小可变 标记轴...2 index 对于行标签,要用于结果帧的索引是可选缺省值np.arrange(n),如果没有传递索引值。 3 columns 对于列标签,可选的默认语法是 - np.arange(n)。...using POP function:") df.pop('two') print df 行选择,添加和删除 标签选择 loc import pandas as pd d = {'one' : pd.Series...['a','b']) df = df.append(df2) print df 删除行 drop 使用索引标签从DataFrame中删除或删除行。

3.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    直观地解释和可视化每个复杂的DataFrame操作

    考虑一个二维矩阵,其一维为“ B ”和“ C ”(列名),另一维为“ a”,“ b ”和“ c ”(行索引)。 我们选择一个ID,一个维度和一个包含值的列/列。...为了访问狗的身高值,只需两次调用基于索引的检索,例如 df.loc ['dog']。loc ['height']。 要记住:从外观上看,堆栈采用表的二维性并将列堆栈为多级索引。...作为另一个示例,当级别设置为0(第一个索引级别)时,其中的值将成为列,而随后的索引级别(第二个索引级别)将成为转换后的DataFrame的索引。 ?...默认情况下,合并功能执行内部联接:如果每个DataFrame的键名均未列在另一个键中,则该键不包含在合并的DataFrame中。...由于每个索引/行都是一个单独的项目,因此串联将其他项目添加到DataFrame中,这可以看作是行的列表。

    13.3K20

    Python进阶之Pandas入门(三) 最重要的数据流操作

    /data movies_df = pd.read_csv("IMDB-Movie-Data.csv", index_col="Title") 我们从CSV中加载这个数据集,并将电影标题指定为我们的索引...通常,当我们加载数据集时,我们喜欢查看前五行左右的内容,以了解隐藏在其中的内容。在这里,我们可以看到每一列的名称、索引和每行中的值示例。...您将注意到,DataFrame中的索引是Title列,您可以通过单词Title比其他列稍微低一些的方式看出这一点。...获取数据信息 .info()应该是加载数据后运行的其中一个命令: movies_df.info() 运行结果: pandas.core.frame.DataFrame'>Index: 1000...调用.shape确认我们回到了原始数据集的1000行。 在本例中,将DataFrames分配给相同的变量有点冗长。因此,pandas的许多方法上都有inplace关键参数。

    2.7K20

    Pandas merge用法解析(用Excel的数据为例子)

    可以是列名,索引级名称,也可以是长度等于DataFrame长度的数组。 right_on: 左侧DataFrame中的列或索引级别用作键。...可以是列名,索引级名称,也可以是长度等于DataFrame长度的数组。 left_index: 如果为True,则使用左侧DataFrame中的索引(行标签)作为其连接键。...suffixes: 用于重叠列的字符串后缀元组。默认为(‘x’,’ y’)。 copy: 始终从传递的DataFrame对象复制数据(默认为True),即使不需要重建索引也是如此。...indicator:将一列添加到名为_merge的输出DataFrame,其中包含有关每行源的信息。..._merge是分类类型,并且对于其合并键仅出现在“左”DataFrame中的观察值,取得值为left_only,对于其合并键仅出现在“右”DataFrame中的观察值为right_only,并且如果在两者中都找到观察点的合并键

    1.7K20

    猿创征文|数据导入与预处理-第3章-pandas基础

    ]中为数字时,默认选择行,且只能进行切片的选择,不能单独选择(df[0]) # 输出结果为Dataframe,即便只选择一行 # df[]不能通过索引标签名来选择行(df['one']) # 核心笔记...:df[col]一般用于选择列,[]中写列名 输出为: df.loc[] - 按index选择行 # df.loc[] - 按index选择行 df1 = pd.DataFrame(np.random.rand...可以做切片对象 # 末端包含 # 核心笔记:df.loc[label]主要针对index选择行,同时支持指定index,及默认数字index 输出为: df.iloc[] - 按照整数位置(从轴的...0到length-1)选择行 # df.iloc[] - 按照整数位置(从轴的0到length-1)选择行 # 类似list的索引,其顺序就是dataframe的整数位置,从0开始计 df = pd.DataFrame...变量.at[行索引, 列索引] 变量.iat[行索引, 列索引] 以上方式中,"at[行索引, 列索引]"中的索引必须为自定义的标签索引,"iat[行索引, 列索引]"中的索引必须为自动生成的整数索引

    14K20

    从小白到大师,这里有一份Pandas入门指南

    选自Medium 作者:Rudolf Höhn 机器之心编译 参与:李诗萌、张倩 在本文中,作者从 Pandas 的简介开始,一步一步讲解了 Pandas 的发展现状、内存优化等问题。...索引 Pandas 是强大的,但也需要付出一些代价。当你加载 DataFrame 时,它会创建索引并将数据存储在 numpy 数组中。这是什么意思?...一旦加载了数据框,只要正确管理索引,就可以快速地访问数据。 访问数据的方法主要有两种,分别是通过索引和查询访问。根据具体情况,你只能选择其中一种。但在大多数情况中,索引(和多索引)都是最好的选择。...否则,对于 DataFrame 中的每一个新行,Pandas 都会更新索引,这可不是简单的哈希映射。...在(遥远的?)未来,缓式评估(lazy evaluation)可能出现在方法链中,所以在链上做一些投资可能是一个好想法。

    1.8K11

    【数据处理包Pandas】DataFrame数据选择的基本方法

    中索引值以字母'A'开头的所有行,并选择'team'列: # 带条件筛选 df.loc[df.index.str.startswith('A'),'team'] 2、选择 DataFrame df中索引值以字母...副本df2与原始的 DataFrame df具有相同的数据和结构,但它们是独立的对象,对其中一个对象的操作不会影响另一个对象。因此,通过这样的方式可以安全地对df2进行任何需要的修改或处理。...对 DataFrame df2中的每一行,从 ‘Q1’ 到 ‘Q4’ 列的值进行求和: df2.apply(lambda x:sum(x['Q1':'Q4']),axis=1) # 一次处理一行 使用了...其中lambda x: sum(x['Q1':'Q4'])表示对每一行从 ‘Q1’ 到 ‘Q4’ 列进行求和操作。而axis=1参数指定了按行操作。...因此,该代码将会对 DataFrame df2中的每一行,从 ‘Q1’ 到 ‘Q4’ 列的值进行求和,并返回一个包含每一行求和结果的 Series。

    8500

    【Python环境】Python中的结构化数据分析利器-Pandas简介

    -- more --> 创建DataFrame 首先引入Pandas及Numpy: import pandas as pdimport numpy as np 官方推荐的缩写形式为pd,你可以选择其他任意的名称...由d构建的为一个4行2列的DataFrame。其中one只有3个值,因此d行one列为NaN(Not a Number)--Pandas默认的缺失值标记。...从列表的字典构建DataFrame,其中嵌套的每个列表(List)代表的是一个列,字典的名字则是列标签。这里要注意的是每个列表中的元素数量应该相同。...否则会报错: ValueError: arrays must all be same length 从字典的列表构建DataFrame,其中每个字典代表的是每条记录(DataFrame中的一行),字典中每个值对应的是这条记录的相关属性...df[0:3]df[0] 下标索引选取的是DataFrame的记录,与List相同DataFrame的下标也是从0开始,区间索引的话,为一个左闭右开的区间,即[0:3]选取的为1-3三条记录。

    15.1K100

    从小白到大师,这里有一份Pandas入门指南

    作者:Rudolf Höhn 机器之心编译 参与:李诗萌、张倩 在本文中,作者从 Pandas 的简介开始,一步一步讲解了 Pandas 的发展现状、内存优化等问题。...索引 Pandas 是强大的,但也需要付出一些代价。当你加载 DataFrame 时,它会创建索引并将数据存储在 numpy 数组中。这是什么意思?...一旦加载了数据框,只要正确管理索引,就可以快速地访问数据。 访问数据的方法主要有两种,分别是通过索引和查询访问。根据具体情况,你只能选择其中一种。但在大多数情况中,索引(和多索引)都是最好的选择。...否则,对于 DataFrame 中的每一个新行,Pandas 都会更新索引,这可不是简单的哈希映射。...在(遥远的?)未来,缓式评估(lazy evaluation)可能出现在方法链中,所以在链上做一些投资可能是一个好想法。

    1.7K30

    从小白到大师,这里有一份Pandas入门指南

    选自Medium 机器之心编译 在本文中,作者从 Pandas 的简介开始,一步一步讲解了 Pandas 的发展现状、内存优化等问题。...索引 Pandas 是强大的,但也需要付出一些代价。当你加载 DataFrame 时,它会创建索引并将数据存储在 numpy 数组中。这是什么意思?...一旦加载了数据框,只要正确管理索引,就可以快速地访问数据。 访问数据的方法主要有两种,分别是通过索引和查询访问。根据具体情况,你只能选择其中一种。但在大多数情况中,索引(和多索引)都是最好的选择。...否则,对于 DataFrame 中的每一个新行,Pandas 都会更新索引,这可不是简单的哈希映射。...在(遥远的?)未来,缓式评估(lazy evaluation)可能出现在方法链中,所以在链上做一些投资可能是一个好想法。

    1.7K30

    开启机器学习的第一课:用Pandas进行数据分析

    Pandas中的主要数据结构包括Series和DataFrame类。前者是针对一些特定数据类型的一种一维索引数组格式。...print(df.shape) (3333, 20) 从输出中我们可以看到,该表格数据包含3333行和20列。...用Bool值对列数据进行索引也是非常简便的,具体的实现为df [P(df ['Name'])],其中P表示对Name这个列的每个元素进行检查所需某个逻辑条件。...其中,loc()方法是用于按名称进行索引,我们假定“索引从0到5(包含索引值)的行以及从State到Area code标记(包含索引值)的列的值”,代码如下: df.loc[0:5, 'State':'...我们会假定“索引得到前三列中前五行的值,这种索引方式和Python切片方式是一样的,不会包含索引的最大值对应的项,代码如下: df.iloc[0:5, 0:3] 如果想索引DataFrame数据中的第一行和最后一行

    1.6K50

    30 个小例子帮你快速掌握Pandas

    我们删除了4列,因此列数从14减少到10。 2.读取时选择特定的列 我们只打算读取csv文件中的某些列。读取时,列列表将传递给usecols参数。如果您事先知道列名,则比以后删除更好。...我们还可以使用skiprows参数从文件末尾选择行。Skiprows = 5000表示在读取csv文件时我们将跳过前5000行。...这些方法根据索引或标签选择行和列。 loc:带标签选择 iloc:用索引选择 先创建20个随机indices。...让我们做另一个使用索引而不是标签的示例。 df.iloc [missing_index,-1] = np.nan "-1"是最后一列Exit的索引。...考虑从DataFrame中抽取样本的情况。该示例将保留原始DataFrame的索引,因此我们要重置它。

    10.8K10

    pandas学习-索引-task13

    通过 [列名] 可以从 DataFrame 中取出相应的列,返回值为 Series ,例如从表中取出姓名一列:  df = pd.read_csv("E:/document/python学习笔记/pandas...loc 索引器的一般形式是 loc[*, ] ,其中第一个 * 代表行的选择,第二个 * 代表列的选择,如果省略第二个位置写作 loc[],这个 * 是指行的筛选。...sample 函数中的主要参数为 n, axis, frac, replace, weights ,前三个分别是指抽样数量、抽样的方向(0为行、1为列)和抽样比例(0.3则为从总体中抽出30%的样本)。...与单层索引的表一样,具备元素值、行索引和列索引三个部分。其中,这里的行索引和列索引都是 MultiIndex 类型,只不过 索引中的一个元素是元组 而不是单层索引中的标量。...= new_idx 关于 map 的另一个使用方法是对多级索引的压缩,这在第四章和第五章的一些操作中是有用的: df_temp = df_ex.copy() new_idx = df_temp.index.map

    92400
    领券