利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)


Posted in Python onSeptember 04, 2020

前言

做数据分析的时候通常我们并不是对真个excel文件进行操作,换言之,每一列都是一个特征,我们需要针对分析。遇到这类问题的时候,我们通常想得到一列中所有符合条件的数据,挑出来,然后组成一个单独的文件进行分析。比如一列中我们希望找到所有大于100的所有行,又比如 我们希望得到一列中包含某个特定字母的所有行,那么我们应该怎么办呢,这里就说一下。

在这之前我们先介绍一个pandas里面一个函数 loc()

英文解释是这样的:Purely label-location based indexer for selection by label.

               .loc[] is primarily label based, but may also be used with a boolean array.

最通俗的讲就是标签索引器

了解了这个函数(具体用法下面两个例子就可以懂),我们可两个例子 就可以选择我们想要的行了

利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)

问题一:我们想要“behavior_type”列中所有为3或4的行

import pandas as pd
import numpy as np

import csv

for df in pd.read_csv(open(r'C:\Users\yang\Desktop\useer.csv','r'),chunksize=10000): 
 print(df.loc[df['behavior_type']>1,:])

从这个程序我们可以得出 .loc() 前面是我们的整个索引目标,括号中为索引标签(我们回到loc英文解释第二局话,可以索引布尔型) ,那么这么简单一句话就可以把所以为3,4的行输出了.后面的冒号代表从开始到最后索引

print(df.loc[df['behavior_type'].isin([3,4]),:])

注意 这里的isin([ ])有小括号 也有中括号集合的形式。

我们也可以利用isin代替大于号性质是一样的,该标签下所有为3,4的集合的布尔型 然后再索引

print(df[df['behavior_type'].isin([3,4])])

提到isin 我们想到了一个更为简单的方法,直接索引即可

问题一:我们想要“user_geohash”列中所有含有字母‘qo'的行

print(df.loc[df['user_geohash'].str.contains('qo')])

是不是已经想到了 利用loc就可以了,只要后面加上字符串str.contains()函数即可。

那么到这里所有的问题迎刃而解,那么我们想要索取特定行呢 我们想要索取特定列呢

没问题 让我们继续深入了解loc函数

df是一个dataframe,列名为A B C D

具体值如下:

A    B    C     D
0    ss   小红  8
1    aa   小明  d
4    f          f
6    ak   小紫  7

dataframe里的属性是不定的,空值默认为NA。

一、选取标签为A和C的列,并且选完类型还是dataframe

df = df.loc[:, ['A', 'C']]
df = df.iloc[:, [0, 2]]

二、选取标签为C并且只取前两行,选完类型还是dataframe

df = df.loc[0:2, ['A', 'C']] 
df = df.iloc[0:2, [0, 2]]

聪明的你发现loc的用法了吗?

总结

到此这篇关于利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)的文章就介绍到这了,更多相关python3筛选excel特定的行内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
布同 统计英文单词的个数的python代码
Mar 13 Python
python实现批量监控网站
Sep 09 Python
python如何实现int函数的方法示例
Feb 19 Python
Django框架实现逆向解析url的方法
Jul 04 Python
解决pycharm工程启动卡住没反应的问题
Jan 19 Python
详解Python二维数组与三维数组切片的方法
Jul 18 Python
python 动态迁移solr数据过程解析
Sep 04 Python
PyCharm+Pipenv虚拟环境开发和依赖管理的教程详解
Apr 16 Python
Python爬虫获取页面所有URL链接过程详解
Jun 04 Python
django rest framework 过滤时间操作
Jul 12 Python
python与js主要区别点总结
Sep 13 Python
Python 生成短8位唯一id实战教程
Jan 13 Python
Python读取Excel一列并计算所有对象出现次数的方法
Sep 04 #Python
学习Python需要哪些工具
Sep 04 #Python
详解python tkinter包获取本地绝对路径(以获取图片并展示)
Sep 04 #Python
Python程序慢的重要原因
Sep 04 #Python
利用Python实现朋友圈中的九宫格图片效果
Sep 03 #Python
详解pytorch中squeeze()和unsqueeze()函数介绍
Sep 03 #Python
Django实现微信小程序支付的示例代码
Sep 03 #Python
You might like
超小PHP小马小结(方便查找后门的朋友)
2012/05/05 PHP
使用PHP编写发红包程序
2015/07/22 PHP
PHP+jQuery+Ajax实现分页效果 jPaginate插件的应用
2015/10/09 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
七种PHP开发环境搭建工具
2020/06/28 PHP
一个简单的js动画效果代码
2010/07/20 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
深入理解JS正则表达式---分组
2016/07/18 Javascript
AngularJS入门教程之更多模板详解
2016/08/19 Javascript
js原生跨域_用script标签的简单实现
2016/09/24 Javascript
Vue前后端不同端口的实现方法
2018/09/19 Javascript
js实现图片局部放大效果详解
2019/03/18 Javascript
Vue实现点击当前行变色
2020/12/14 Vue.js
如何在JavaScript中使用localStorage详情
2021/02/04 Javascript
python实现批量修改文件名代码
2017/09/10 Python
python实现二叉树的遍历
2017/12/11 Python
Python字典及字典基本操作方法详解
2018/01/30 Python
python深度优先搜索和广度优先搜索
2018/02/07 Python
python中使用PIL制作并验证图片验证码
2018/03/15 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
2018/05/10 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
解决PyCharm控制台输出乱码的问题
2019/01/16 Python
PyQtGraph在pyqt中的应用及安装过程
2019/08/04 Python
Python上下文管理器全实例详解
2019/11/12 Python
Python Pandas 对列/行进行选择,增加,删除操作
2020/05/17 Python
Python lambda表达式原理及用法解析
2020/08/18 Python
Python gevent协程切换实现详解
2020/09/14 Python
Python在centos7.6上安装python3.9的详细教程(默认python版本为2.7.5)
2020/10/15 Python
Python jieba结巴分词原理及用法解析
2020/11/05 Python
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
新加坡领先的在线生活方式和杂货购物网站:EAMART
2019/04/02 全球购物
《争吵》教学反思
2014/02/15 职场文书
综合素质自我评价评语
2015/03/06 职场文书
高三语文教学反思
2016/02/16 职场文书
go原生库的中bytes.Buffer用法
2021/04/25 Golang
CSS 左边固定宽右边自适应的6种方法
2022/05/15 HTML / CSS