pandas中遍历dataframe的每一个元素的实现

pandas中遍历dataframe的每一个元素的实现

2023年6月29日发(作者:)

pandas中遍历dataframe的每⼀个元素的实现假如有⼀个需求场景需要遍历⼀个csv或excel中的每⼀个元素,判断这个元素是否含有某个关键字那么可以⽤python的pandas库来实现。⽅法⼀:pandas的dataframe有⼀个很好⽤的函数applymap,它可以把某个函数应⽤到dataframe的每⼀个元素上,⽽且⽐常规的for循环去遍历每个元素要快很多。如下是相关代码:import pandas as pddata = [["str","ewt","earw"],["agter","awetg","aeorgh"]]dataframe1 = ame(data=data,columns=["name1","name2","name3"])print(dataframe1)bool_array = ap(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去处理,那换⼀种⽅式可以每次遍历⼀列#接上⾯代码file_columns = ()for column in file_columns: bool_index = dataframe1[column].ns("w") filter_data = dataframe1[column][bool_index] print(filter_data)

>>Series([], Name: name1, dtype: object)0 ewt1 awetgName: name2, dtype: object0 earwName: name3, dtype: object代码种 ns 是 Series 才有的⼀个操作。另外,filter_data只输出每⼀列中满⾜条件的元素,更⽅便下⼀步的操作。简单说明:针对pandas的dataframe和series,有强⼤的⾼阶函数:apply,applymap和map函数等,它们⽐简单的for循环要快很多,善⽤这些⾼阶函数会让你事半功倍。以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

发布者:admin,转转请注明出处:http://www.yc00.com/news/1687978610a63012.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信