利用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结合selenium获取XX省交通违章数据的实现思路及代码
Jun 26 Python
Python之自动获取公网IP的实例讲解
Oct 01 Python
解决Pandas to_json()中文乱码,转化为json数组的问题
May 10 Python
Python pyinotify模块实现对文档的实时监控功能方法
Oct 13 Python
Django 实现图片上传和显示过程详解
Jul 18 Python
python输出带颜色字体实例方法
Sep 01 Python
python网络编程之多线程同时接受和发送
Sep 03 Python
python和JavaScript哪个容易上手
Jun 23 Python
Python如何将将模块分割成多个文件
Aug 04 Python
python如何利用Mitmproxy抓包
Oct 10 Python
聊聊pytorch测试的时候为何要加上model.eval()
May 23 Python
python中的random模块和相关函数详解
Apr 22 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
Notice: Undefined index: page in E:\PHP\test.php on line 14
2010/11/02 PHP
phpstudy的php版本自由修改的方法
2017/10/18 PHP
js 日期转换成中文格式的函数
2009/07/07 Javascript
基于jQuery的投票系统显示结果插件
2011/08/12 Javascript
可简单避免的三个JS发布错误的详细介绍
2013/08/02 Javascript
如何让DIV可编辑、可拖动示例代码
2013/09/18 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
2015/08/18 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
2016/04/08 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
javascript验证香港身份证的格式或真实性
2017/02/07 Javascript
VueJS如何引入css或者less文件的一些坑
2017/04/25 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
[11:44]Ti9 OG夺冠时刻
2019/08/25 DOTA
Python选择排序、冒泡排序、合并排序代码实例
2015/04/10 Python
Python 操作文件的基本方法总结
2017/08/10 Python
python生成excel的实例代码
2017/11/08 Python
python中的set实现不重复的排序原理
2018/01/24 Python
python之消除前缀重命名的方法
2018/10/21 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
2019/07/11 Python
TensorFlow梯度求解tf.gradients实例
2020/02/04 Python
Html5移动端弹幕动画实现示例代码
2018/08/27 HTML / CSS
荷兰优雅女装网上商店:Heine
2016/11/14 全球购物
Koral官方网站:女性时尚运动服
2019/04/10 全球购物
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
你对IPv6了解程度
2016/02/09 面试题
介绍一下XMLHttpRequest对象
2012/02/12 面试题
妇产医师自荐信
2014/01/29 职场文书
公务员中国梦演讲稿
2014/08/19 职场文书
八荣八耻演讲稿
2014/09/15 职场文书
2014年打非治违工作总结
2014/11/13 职场文书
教师党员承诺书2015
2015/01/21 职场文书
2016继续教育培训学习心得体会
2016/01/19 职场文书
javascript函数式编程基础
2021/09/15 Javascript
小喇叭开始广播了! 四十多年前珍贵老照片
2022/05/09 无线电