pandas实现按行选择的示例代码

目录
  • 1.自定义行索引
  • 2. 按普通索引选择数据
    • 2.1 按普通索引选择单行数据
    • 2.2 按行索引选择多行数据
  • 3.按位置索引选择数据
    • 3.2 按位置索引选择多行数据
  • 4.选择连续多行数据
  • 5.选择满足条件的行
    • 5.1单个条件选择
    • 5.2 多个条件选择
      • 5.2.1 多个条件是且的关系
      • 5.2.2 多个条件是或的关系

本文所用到的Excel表格内容如下:

1.自定义行索引

dataframe读取Excel表格时是由自定义行索引的。这里为了展示效果,先进行自定义行索引的操作

import pandas as pd
​
df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print('设置索引前:')
print(df)
print('设置索引后:')
df.index = ['一', '二', '三', '四', '五']
print(df)

result:
设置索引前:
   区域   省份  城市         时间  指标     地址    权重      字符
0  东北   辽宁  大连 2019-09-06  12  “123“  0.78  u"123"
1  西北   广东  西安 2019-09-07  87  “124“  0.65  u"124"
2  华南   北京  深圳 2019-09-08  87  “125“  0.34  u"125"
3  华北   湖北  北京 2019-09-09  45  “126“  1.23  u"126"
4  华中  黑龙江  武汉 2019-09-10  21  “127“  8.90  u"127"
设置索引后:
   区域   省份  城市         时间  指标     地址    权重      字符
一  东北   辽宁  大连 2019-09-06  12  “123“  0.78  u"123"
二  西北   广东  西安 2019-09-07  87  “124“  0.65  u"124"
三  华南   北京  深圳 2019-09-08  87  “125“  0.34  u"125"
四  华北   湖北  北京 2019-09-09  45  “126“  1.23  u"126"
五  华中  黑龙江  武汉 2019-09-10  21  “127“  8.90  u"127"

2. 按普通索引选择数据

这里说一下,行普通索引实际上就是行名。为了行文方便,后续一律称普通索引。

2.1 按普通索引选择单行数据

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.loc['一'])

result:
区域                     东北
省份                     辽宁
城市                     大连
时间    2019-09-06 00:00:00
指标                     12
地址                  “123“
权重                   0.78
字符                 u"123"
Name: 一, dtype: object

2.2 按行索引选择多行数据

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.loc[['一', '三', '四']])

result:
   区域  省份  城市         时间  指标     地址    权重      字符
一  东北  辽宁  大连 2019-09-06  12  “123“  0.78  u"123"
三  华南  北京  深圳 2019-09-08  87  “125“  0.34  u"125"
四  华北  湖北  北京 2019-09-09  45  “126“  1.23  u"126"

注:选择单列数据是参数为字符串类型,多列数据时参数为列表类型

3.按位置索引选择数据

3.1 按位置索引选择单行数据

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.iloc[0])

result:
区域                     东北
省份                     辽宁
城市                     大连
时间    2019-09-06 00:00:00
指标                     12
地址                  “123“
权重                   0.78
字符                 u"123"
Name: 一, dtype: object

3.2 按位置索引选择多行数据

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.iloc[[0, 1]])

result:
   区域  省份  城市         时间  指标     地址    权重      字符
一  东北  辽宁  大连 2019-09-06  12  “123“  0.78  u"123"
二  西北  广东  西安 2019-09-07  87  “124“  0.65  u"124"

4.选择连续多行数据

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.iloc[0:2])

result:
   区域  省份  城市         时间  指标     地址    权重      字符
一  东北  辽宁  大连 2019-09-06  12  “123“  0.78  u"123"
二  西北  广东  西安 2019-09-07  87  “124“  0.65  u"124"

表示获取所有行第1列到第3列的数据。选择连续多列数据时语法类似于切片语法,所以也称之为切片索引。

5.选择满足条件的行

5.1单个条件选择

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print(df[df['指标'] < 50])

result:
   区域   省份  城市         时间  指标    权重
0  东北   辽宁  大连 2019-09-06  12  0.78
3  华北   湖北  北京 2019-09-09  45  1.23
4  华中  黑龙江  武汉 2019-09-10  21  8.90

5.2 多个条件选择

5.2.1 多个条件是且的关系

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print(df[(df['指标'] < 50) & (df['权重'] < 1)])

result:
   区域  省份  城市         时间  指标    权重
0  东北  辽宁  大连 2019-09-06  12  0.78

5.2.2 多个条件是或的关系

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print(df[(df['指标'] < 50) | (df['权重'] < 1)])

result:
   区域   省份  城市         时间  指标    权重
0  东北   辽宁  大连 2019-09-06  12  0.78
1  西北   广东  西安 2019-09-07  87  0.65
2  华南   北京  深圳 2019-09-08  87  0.34
3  华北   湖北  北京 2019-09-09  45  1.23
4  华中  黑龙江  武汉 2019-09-10  21  8.90

到此这篇关于pandas实现按行选择的示例代码的文章就介绍到这了,更多相关pandas 按行选择内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python pandas dataframe 按列或者按行合并的方法

    concat 与其说是连接,更准确的说是拼接.就是把两个表直接合在一起.于是有一个突出的问题,是横向拼接还是纵向拼接,所以concat 函数的关键参数是axis . 函数的具体参数是: concat(objs,axis=0,join='outer',join_axes=None,ignore_index=False,keys=None,levels=None,names=None,verigy_integrity=False) objs 是需要拼接的对象集合,一般为列表或者字典 axis=0 是

  • pandas.dataframe按行索引表达式选取方法

    需要把一个从csv文件里读取来的数据集等距抽样分割,这里用到了列表表达式和dataframe.iloc 先生成索引列表: index_list = ['%d' %i for i in range(df.shape[0]) if i % 3 == 0] 在dataframe中选取 sample_df = df.iloc[index_list] 合起来 sample_df = df.iloc[['%d' %i for i in range(df.shape[0]) if i % 3 == 0]] 各

  • pandas.DataFrame.to_json按行转json的方法

    最近需要将csv文件转成DataFrame并以json的形式展示到前台,故需要用到Dataframe的to_json方法 to_json方法默认以列名为键,列内容为值,形成{col1:[v11,v21,v31-],col2:[v12,v22,v32],-}这种格式,但有时我们需要按行来转为json,形如这种格式[row1:{col1:v11,col2:v12,col3:v13-},row2:{col1:v21,col2:v22,col3:v23-}] 通过查找官网我们可以看到to_json方法有

  • pandas按行按列遍历Dataframe的几种方式

    遍历数据有以下三种方法: 简单对上面三种方法进行说明: iterrows(): 按行遍历,将DataFrame的每一行迭代为(index, Series)对,可以通过row[name]对元素进行访问. itertuples(): 按行遍历,将DataFrame的每一行迭代为元祖,可以通过row[name]对元素进行访问,比iterrows()效率高. iteritems():按列遍历,将DataFrame的每一列迭代为(列名, Series)对,可以通过row[index]对元素进行访问. 示例

  • Pandas实现DataFrame按行求百分数(比例数)

    简述 Motivation 一般来说,每个部分的内容数量是较为容易获取的,但比例(百分数)这样的数据是二次数据,这样的操作很常见 比例的信息相比于纯粹的数字更体现的整体体系的内部变化迁移的过程 Contribution 给了实例,follow下就没问题了~ Codes 导入包的部分,我就不写了哈 这里假设每行是属于不同月份的数据 >>> df a b c d e month0 0 1 2 3 4 month1 5 6 7 8 9 month2 10 11 12 13 14 month3

  • pandas实现按行选择的示例代码

    目录 1.自定义行索引 2. 按普通索引选择数据 2.1 按普通索引选择单行数据 2.2 按行索引选择多行数据 3.按位置索引选择数据 3.2 按位置索引选择多行数据 4.选择连续多行数据 5.选择满足条件的行 5.1单个条件选择 5.2 多个条件选择 5.2.1 多个条件是且的关系 5.2.2 多个条件是或的关系 本文所用到的Excel表格内容如下: 1.自定义行索引 dataframe读取Excel表格时是由自定义行索引的.这里为了展示效果,先进行自定义行索引的操作 import panda

  • JavaScript实现串行请求的示例代码

    使用async和await var fn = async function(promiseArr) { for(let i = 0,len = arr.length; i<len; i++) { currentPromise = (promiseArr[i] instanceOf Promise) ? promiseArr[i] : Promise.resolve(promiseArr[i]); var result = await currentPromise; console.log(res

  • Pandas实现聚合运算agg()的示例代码

    目录 前言 1. 创建DataFrame对象 2. 单列聚合 3. 多列聚合 4. 多种聚合运算 5. 多种聚合运算并更改列名 6. 不同的列运用不同的聚合函数 7. 使用自定义的聚合函数 8. 方便的descibe 前言 在数据分析中,分组聚合二者缺一不可.对数据聚合(求和.平均值等)通常是不可避免的.pd.agg()很方便进行聚合操作. 1. 创建DataFrame对象 import pandas as pd df1 = pd.DataFrame({'sex':list('FFMFMMF')

  • Jqgrid设置全选(选择)及获取选择行的值示例代码

    1.添加multiselect: true 2.获取选择行的值 复制代码 代码如下: var rowData = jQuery('#List').jqGrid('getGridParam','selarrrow');    if(rowData.length)     {        for(var i=0;i<rowData.length;i++)        {           var name= jQuery('#List').jqGrid('getCell',rowData[i]

  • Pandas读取并修改excel的示例代码

    一.前言 最近总是和excel打交道,由于数据量较大,人工来修改某些数据可能会有点浪费时间,这时候就使用到了Python数据处理的神器-–Pandas库,话不多说,直接上Pandas. 二.安装 这次使用的python版本是python2.7,安装python可以去python的官网进行下载,这里不多说了. 安装完成后使用Python自带的包管理工具pip可以很快的安装pandas. pip install pandas 如果使用的是Anaconda安装的Python,会自带pandas. 三.

  • Python使用pandas导入csv文件内容的示例代码

    目录 使用pandas导入csv文件内容 1. 默认导入 2. 指定分隔符 3. 指定读取行数 4. 指定编码格式 5. 列标题与数据对齐 使用pandas导入csv文件内容 1. 默认导入 在Python中导入.csv文件用的方法是read_csv(). 使用read_csv()进行导入时,指定文件名即可 import pandas as pd df = pd.read_csv(r'G:\test.csv') print(df) 2. 指定分隔符 read_csv()默认文件中的数据都是以逗号

  • div模拟选择框示例代码

    html原有标签可以满足我们需求,有时为了使界面更加美观,就需要自己写出来一些列标签供使用,这次项目就有这个要求了,模拟选项框 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.

  • JavaScript限定复选框的选择个数示例代码

    有10个复选框,用户最多只能勾选3个,否则就灰掉所有复选框. (用户再次勾掉复选框时,仍然可以再次选择.) 将可变的部分设置为JS的参数,以实现代码复用. JS代码 第一个参数为复选框的name,第二个参数为最多允许的勾选值. 复制代码 代码如下: function choicetest(name,num){ var choicearr = document.getElementsByName(name); var a=0; for(var i=0;i<choicearr.length;i++)

  • Easyui笔记2:实现datagrid多行删除的示例代码

    如何实现datagrid多行删除? 最近在前端界面开发中,使用了datagrid组件.需要完成一个多行勾选并删除的功能. 查看easyui api,其中有一个deleteRow方法,传入要删除行的索引,即可删除该行. 错误做法 于是准备用deleteRow方法和onChecked和onUncheck事件配合使用,来完成多行删除功能. 当用户勾选一行时,触发onChecked事件,将onChecked事件传进来的index索引push到一个全局array中. 当用户取消勾选的时候,触发onUnch

  • JQuery中dataGrid设置行的高度示例代码

    复制代码 代码如下: columns:[[ {field:"activitycontent",title:'活动内容',width:fixWidth(0.18),align:"center",halign:"center", formatter:function(value,rec){ if(value.indexOf("src")<0){ if(rec.activitycontent.length>Math.ce

随机推荐