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

Pandas库的基础使用系列---获取行和列

前言我们上篇文章简单的介绍了如何获取行和列的数据,今天我们一起来看看两个如何结合起来用。获取指定行和指定列的数据我们依然使用之前的数据。...我们先看看如何通过切片的方法获取指定列的所有行的数据info = df.loc[:, ["2021年", "2017年"]]我们注意到,行的位置我们使用类似python中的切片语法。...接下来我们再看看获取指定行指定列的数据df.loc[2, "2022年"]是不是很简单,大家要注意的是,这里的2并不算是所以哦,而是行名称,只不过是用了padnas自动帮我创建的行名称。...如果要使用索引的方式,要使用下面这段代码df.iloc[2, 2]是不是很简单,接下来我们再看看如何获取多行多列。为了更好的的演示,咱们这次指定索引列df = pd.read_excel(".....通常是建议这样获取的,因为从代码的可读性上更容易知道我们获取的是哪一行哪一列。当然我们也可以通过索引和切片的方式获取,只是可读性上没有这么好。

63700

pandas中的loc和iloc_pandas获取指定数据的行和列

大家好,又见面了,我是你们的朋友全栈君 实际操作中我们经常需要寻找数据的某行或者某列,这里介绍我在使用Pandas时用到的两种方法:iloc和loc。...目录 1.loc方法 (1)读取第二行的值 (2)读取第二列的值 (3)同时读取某行某列 (4)读取DataFrame的某个区域 (5)根据条件读取 (6)也可以进行切片操作 2.iloc方法 (1)...读取第二行的值 (2)读取第二行的值 (3)同时读取某行某列 (4)进行切片操作 ---- loc:通过行、列的名称或标签来索引 iloc:通过行、列的索引位置来寻找数据 首先,我们先创建一个...,"D","E"]] 结果: 2.iloc方法 iloc方法是通过索引行、列的索引位置[index, columns]来寻找值 (1)读取第二行的值 # 读取第二行的值,与loc方法一样 data1...和columns进行切片操作 # 读取第2、3行,第3、4列 data1 = data.iloc[1:3, 2:4] 结果: 注意: 这里的区间是左闭右开,data.iloc[1:

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

    用过Excel,就会获取pandas数据框架中的值、行和列

    在Python中,数据存储在计算机内存中(即,用户不能直接看到),幸运的是pandas库提供了获取值、行和列的简单方法。 先准备一个数据框架,这样我们就有一些要处理的东西了。...df.columns 提供列(标题)名称的列表。 df.shape 显示数据框架的维度,在本例中为4行5列。 图3 使用pandas获取列 有几种方法可以在pandas中获取列。...请注意双方括号: dataframe[[列名1,列名2,列名3,…]] 图6 使用pandas获取行 可以使用.loc[]获取行。请注意此处是方括号,而不是圆括号()。...获取1行 图7 获取多行 我们必须使用索引/切片来获取多行。在pandas中,这类似于如何索引/切片Python列表。...要获取前三行,可以执行以下操作: 图8 使用pandas获取单元格值 要获取单个单元格值,我们需要使用行和列的交集。

    19.2K60

    左手用R右手Python系列10——统计描述与列联分析

    Python: 关于Python中的变量与数据描述函数,因为之前已经介绍过一些基础的聚合函数,这里仅就我使用最多的数据透视表和交叉表进行讲解:Pandas中的数据透视表【pivot_table】和交叉表...【crosstab】的规则几乎与Excel中的透视表理念很像,可以作为所有的数值型、类别型变量的表述统计、频率统计和交叉列联表统计使用。...透视表中的行字段,通常为类别型字段) columns=None, #列字段(对应Excel透视表中的列字段,通常为类别型字段) values=None...中的透视表理念一致,只要把握好关于行、列、度量值和聚合函数的设定规则即可。...以上透视表是针对数值型变量的分组聚合,那么针对类别型变量则需要使用pandas中的交叉表函数进行列表分析。

    3.5K120

    Python 使用pandas 进行查询和统计详解

    前言 在使用 Pandas 进行数据分析时,我们需要经常进行查询和统计分析。...统计人数 df.groupby(['gender', 'age'])['name'].count() 交叉表分析: # 构造一个交叉表,统计不同性别和年龄的人数 pd.crosstab(df['gender...返回一个布尔型 DataFrame,表明各元素是否为缺失值 df.isnull() 删除缺失值所在的行或列: # 删除所有含有缺失值的行 df.dropna() # 删除所有含有缺失值的列 df.dropna...(axis=1) 用指定值填充缺失值: # 将缺失值使用 0 填充 df.fillna(0) 数据去重 对 DataFrame 去重: # 根据所有列值的重复性进行去重 df.drop_duplicates...创建数据透视表: # 统计不同性别和年龄的人数,以 'gender' 为行、'age' 为列,'name' 计数 pd.pivot_table(df, values='name', index='gender

    32810

    机器学习三剑客之PandasPandas的两大核心数据结构Panda数据读取(以csv为例)数据处理Pandas的分组和聚合(重要)

    Pandas是基于Numpy开发出的,专门用于数据分析的开源Python库 Pandas的两大核心数据结构 Series(一维数据) 允许索引重复 DataFrame(多特征数据,既有行索引...,又有列索引) # 创建一个3行4列的DataFrame类型数据 data_3_4 = pd.DataFrame(np.arange(10, 22).reshape(3, 4)) # 打印数据 print...(data_3_4) # 打印第一行数据 print(data_3_4[:1]) # 打印第一列数据 print(data_3_4[:][0]) DataFrame的属性 # 读取数据 result...) u_o_g = pd.merge(u_o, goods_info, how="left", on=["goods_name", "goods_name"]) 建立交叉表(用于计算分组的频率) # 交叉表..., 表示出用户姓名,和商品名之间的关系 user_goods = pd.crosstab(u_o_g["姓名"],u_o_g["goods_name"]) Pandas的分组和聚合(重要) 小案例:

    1.9K60

    最全面的Pandas的教程!没有之一!

    DataFrames Pandas 的 DataFrame(数据表)是一种 2 维数据结构,数据以表格的形式存储,分成若干行和列。通过 DataFrame,你能很方便地处理数据。...交叉选择行和列中的数据 我们可以用 .xs() 方法轻松获取到多级索引中某些特定级别的数据。比如,我们需要找到所有 Levels 中,Num = 22 的行: ?...当你使用 .dropna() 方法时,就是告诉 Pandas 删除掉存在一个或多个空值的行(或者列)。删除列用的是 .dropna(axis=0) ,删除行用的是 .dropna(axis=1) 。...比如,将表中所有 NaN 替换成 20 : ? 当然,这有的时候打击范围太大了。于是我们可以选择只对某些特定的行或者列进行填充。比如只对 'A' 列进行操作,在空值处填入该列的平均值: ?...如上所示,'A' 列的平均值是 2.0,所以第二行的空值被填上了 2.0。 同理,.dropna() 和 .fillna() 并不会永久性改变你的数据,除非你传入了inplace=True 参数。

    26K64

    使用awk和sed获取文件奇偶数行的方法总结

    i)' test.file 打印偶数行 其他相关正则取值说明 1) 打印行号和内容 [root@localhost ~]# awk '{print NR":"$0}' test.file 1...如果使用两个文件filname1.ext filname2.ext,则就会看到差别了。...原来:FNR,是每个文件中的,换了一个文件,会归零;而NR则每个文件会累加起来的 7) 使用简单样式来输出 下面表示"行号占用5位,不足补空格" [root@localhost ~]# awk '{...#awk 'END { print NR }' test.file 10) 计算每一行的和 s用作每行和的累加,从1到NF(每行总的字段数),依次累加 # awk '{ s = 0; for...(i = 1; i <= NF; i++) s = s+$i; print s }' test.file 11) 计算文件中所有字段的和 s用作总和的累加,每行都处理完成了,再输出s;注意和10

    1.3K40

    Pandas库常用方法、函数集合

    这里列举下Pandas中常用的函数和方法,方便大家查询使用。...qcut:和cut作用一样,不过它是将数值等间距分割 crosstab:创建交叉表,用于计算两个或多个因子之间的频率 join:通过索引合并两个dataframe stack: 将数据框的列“堆叠”为一个层次化的...mean:计算分组的平均值 median:计算分组的中位数 min和 max:计算分组的最小值和最大值 count:计算分组中非NA值的数量 size:计算分组的大小 std和 var:计算分组的标准差和方差...计算分组的累积和、最小值、最大值、累积乘积 数据清洗 dropna: 丢弃包含缺失值的行或列 fillna: 填充或替换缺失值 interpolate: 对缺失值进行插值 duplicated: 标记重复的行...astype: 将一列的数据类型转换为指定类型 sort_values: 对数据框按照指定列进行排序 rename: 对列或行进行重命名 drop: 删除指定的列或行 数据可视化 pandas.DataFrame.plot.area

    31510

    系统性的学会 Pandas, 看这一篇就够了!

    ","v_ma20"], axis=1) 2.1 索引操作 Numpy当中我们已经讲过使用索引选取序列和切片选择,pandas也支持类似的操作,也可以直接使用列名、行名称,甚至组合使用。...ix组合索引(混合索引:下标和名称) 获取行第1天到第4天,[‘open’, ‘close’, ‘high’, ‘low’]这个四个指标的结果: # 使用ix进行下表和名称组合做引 data.ix[0:...result = pd.merge(left, right, how='outer', on=['key1', 'key2']) 结果: 9、高级处理-交叉表与透视表 9.1 交叉表与透视表什么作用...以下图当中表示,week代表星期几,1,0代表这一天股票的涨跌幅是好还是坏,里面的数据代表比例 可以理解为所有时间为星期一等等的数据当中涨跌幅好坏的比例 交叉表:交叉表用于计算一列数据对于另外一列数据的分组个数...(用于统计分组频率的特殊透视表) pd.crosstab(value1, value2) 透视表:透视表是将原有的DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数 data.pivot_table

    4.6K30

    系统性的学会 Pandas, 看这一篇就够了!

    ","v_ma20"], axis=1) 2.1 索引操作 Numpy当中我们已经讲过使用索引选取序列和切片选择,pandas也支持类似的操作,也可以直接使用列名、行名称,甚至组合使用。...ix组合索引(混合索引:下标和名称) 获取行第1天到第4天,[‘open’, ‘close’, ‘high’, ‘low’]这个四个指标的结果: # 使用ix进行下表和名称组合做引 data.ix[0:...result = pd.merge(left, right, how='outer', on=['key1', 'key2']) 结果: 9、高级处理-交叉表与透视表 9.1 交叉表与透视表什么作用...以下图当中表示,week代表星期几,1,0代表这一天股票的涨跌幅是好还是坏,里面的数据代表比例 可以理解为所有时间为星期一等等的数据当中涨跌幅好坏的比例 交叉表:交叉表用于计算一列数据对于另外一列数据的分组个数...(用于统计分组频率的特殊透视表) pd.crosstab(value1, value2) 透视表:透视表是将原有的DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数 data.pivot_table

    4.1K20

    系统性总结了 Pandas 所有知识点

    ","v_ma20"], axis=1) 2.1 索引操作 Numpy当中我们已经讲过使用索引选取序列和切片选择,pandas也支持类似的操作,也可以直接使用列名、行名称,甚至组合使用。...ix组合索引(混合索引:下标和名称) 获取行第1天到第4天,[‘open’, ‘close’, ‘high’, ‘low’]这个四个指标的结果: # 使用ix进行下表和名称组合做引 data.ix[0:...result = pd.merge(left, right, how='outer', on=['key1', 'key2']) 结果: 9、高级处理-交叉表与透视表 9.1 交叉表与透视表什么作用...以下图当中表示,week代表星期几,1,0代表这一天股票的涨跌幅是好还是坏,里面的数据代表比例 可以理解为所有时间为星期一等等的数据当中涨跌幅好坏的比例 交叉表:交叉表用于计算一列数据对于另外一列数据的分组个数...(用于统计分组频率的特殊透视表) pd.crosstab(value1, value2) 透视表:透视表是将原有的DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数 data.pivot_table

    3.3K20

    系统性的学会 Pandas, 看这一篇就够了!

    ","v_ma20"], axis=1) 2.1 索引操作 Numpy当中我们已经讲过使用索引选取序列和切片选择,pandas也支持类似的操作,也可以直接使用列名、行名称,甚至组合使用。...ix组合索引(混合索引:下标和名称) 获取行第1天到第4天,[‘open’, ‘close’, ‘high’, ‘low’]这个四个指标的结果: # 使用ix进行下表和名称组合做引 data.ix[0:...result = pd.merge(left, right, how='outer', on=['key1', 'key2']) 结果: 9、高级处理-交叉表与透视表 9.1 交叉表与透视表什么作用...以下图当中表示,week代表星期几,1,0代表这一天股票的涨跌幅是好还是坏,里面的数据代表比例 可以理解为所有时间为星期一等等的数据当中涨跌幅好坏的比例 交叉表:交叉表用于计算一列数据对于另外一列数据的分组个数...(用于统计分组频率的特殊透视表) pd.crosstab(value1, value2) 透视表:透视表是将原有的DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数 data.pivot_table

    4.4K40

    一行代码制作数据分析交叉表,太便捷了

    在上一篇文章中我们了解到Pandas模块中的pivot_table()函数可以用来制作数据透视表,今天小编来介绍一下Pandas模块中的另外一个函数corsstab(),我们可以通过调用该函数来制作交叉表...模块导入和数据读取 那我们按照惯例,首先导入模块并且来读取所要使用到的数据集,引用的依然是之前制作数据透视表的数据集 import pandas as pd def load_data():...df = load_data() df.head() output 牛刀小试 交叉表是用于统计分组频率的特殊透视表。...简单来说,就是将两个或者多个列中不重复的元素组成一个新的DataFrame,新数据的行和列交叉的部分值为其组合在原数据中的数量,我们先来看一个简单的例子,代码如下 pd.crosstab(index =...,出来的结果总共有336条数据,和交叉表中的结果一致, 我们可以对列名以及行索引更换名字,通过调用rownames参数以及colnames参数,代码如下 pd.crosstab( index

    67321
    领券