时间:2021-05-22
假如有一个需求场景需要遍历一个csv或excel中的每一个元素,判断这个元素是否含有某个关键字
那么可以用python的pandas库来实现。
方法一:
pandas的dataframe有一个很好用的函数applymap,它可以把某个函数应用到dataframe的每一个元素上,而且比常规的for循环去遍历每个元素要快很多。如下是相关代码:
import pandas as pddata = [["str","ewt","earw"],["agter","awetg","aeorgh"]]dataframe1 = pd.DataFrame(data=data,columns=["name1","name2","name3"])print(dataframe1)bool_array = dataframe1.applymap(lambda x:"w" in x)out_array = dataframe1[bool_array]print(out_array) >> name1 name2 name30 str ewt earw1 agter awetg aeorgh name1 name2 name30 NaN ewt earw1 NaN awetg NaN代码中,bool_array为一个逻辑矩阵,满足条件元素的位置为true,否则为false。然后通过逻辑矩阵去索引dataframe1,就可以得出满足条件的元素。
方法二:
第一种方法是一次性遍历每个元素,这样不好分column去处理,那换一种方式可以每次遍历一列
代码种 Series.str.contains 是 Series 才有的一个操作。另外,filter_data只输出每一列中满足条件的元素,更方便下一步的操作。
简单说明:
针对pandas的dataframe和series,有强大的高阶函数:apply,applymap和map函数等,它们比简单的for循环要快很多,善用这些高阶函数会让你事半功倍。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
pandas中遍历dataframe的每一个元素假如有一个需求场景需要遍历一个csv或excel中的每一个元素,判断这个元素是否含有某个关键字那么可以用pyth
前言大家在使用Python进行数据分析时,经常要使用到的一个数据结构就是pandas的DataFrame,关于python中pandas.DataFrame的基
需求:给定一个dataframe和一个list,list中存放的是dataframe中某一列的元素,删除dataframe中与list元素重复的行(即取差集)。
可以通过遍历的方法:pandas按行按列遍历Dataframe的几种方式:https://www.jb51.net/article/172623.htm选择列使
pandas.DataFrame选取特定行使用Python进行数据分析时,经常要使用到的一个数据结构就是pandas的DataFrame,如果我们想要像Exce