尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

query函数不会用?一行字符串搞定数据筛选,别再写循环了

query函数不会用?一行字符串搞定数据筛选,别再写循环了 中query()用法小结时间更新至, 二零二四年, 三月二十一日, 十一点四十零一分, 作者为高斯小哥。有着强大的功能的query()方法, 是一个函数, 它能够让用户借助字符串表达式, 去筛选其中的数据, 在本文之中会对于其中的query()用法展开相关介绍, 要是对此感兴趣的话, 是可以去进行一番了解的。一、库简介是当中特别流行的一个数据处理库, 这一数据处理库给出了大量的数据结构, 像是某某以及某某等, 还有数据分析工具, 致使数据处理变得既具备简单特性又有高效特征, 在这个当中, query()方法是一个有着强大功能的函数, 此函数准许用户借助字符串表达式去筛选这个当中的数据。二、query()方法基础query()方法, 它能让你运用字符串表达式去做筛选行的操作, 这个表达式跟你在其中使用的常规表达式类似, 不过它是专门针对列名以及值方面的。示例1基本用法import pandas as pd # 创建一个示例DataFrame data { A: [1, 2, 3, 4], B: [5, 6, 7, 8], C: [p, q, r, s] } df pd.DataFrame(data) # 使用query()方法筛选A列大于2的行 filtered_df df.query(A 2) print(filtered_df)输出A B C2 3 7 r3 4 8 s三、高级用法与技巧query()方法并不局限于单纯的比较操作, 你能够运用逻辑运算符像是、|以及更为复杂一些的表达式去筛选数据。示例2使用逻辑运算符import pandas as pd # 创建一个示例DataFrame data { A: [1, 2, 3, 4], B: [5, 6, 7, 8], C: [p, q, r, s] } df pd.DataFrame(data) # 筛选A列大于2且B列小于等于7的行 filtered_df df.query(A 2 and B 7) print(filtered_df)输出A B C2 3 7 r示例3使用字符串方法import pandas as pd # 创建一个示例DataFrame data { A: [1, 2, 3, 4], B: [5, 6, 7, 8], C: [p, qu, r, s] } df pd.DataFrame(data) # 筛选C列以q开头的行 filtered_df df.query(C.str.startswith(q)) print(filtered_df)输出A B C1 2 6 qu四、结合其他功能query()方法能够跟别的众多功能若()、()之类合伙搭配运用, 进而展开更为繁杂的数据类操作。通过这种方式达成更复杂的数据操作行为。示例4结合()import pandas as pd # 创建一个示例DataFrame data { A: [1, 1, 2, 2, 3, 3, 4, 4], B: [5, 6, 6, 7, 7, 8, 8, 9], C: [p, q, r, s, p, q, r, s] } df pd.DataFrame(data) # 按A列分组并在每个组内筛选B列的最大值 grouped_df df.groupby(A).apply(lambda x: x.query(B B.max())) print(grouped_df)输出A B C1 1 1 6 q2 3 2 7 s3 5 3 8 q4 7 4 9 s五、总结query()方法属于库中, 是个强大且灵活的工具, 它能够让你利用易读的字符串表达式, 去筛选其中的数据。借助结合逻辑运算符以及字符串方法, 你能够执行复杂的数据筛选操作。然而, 在对大型数据集进行处理时, 你应当留意性能问题, 并且要考虑使用其他筛选方法。关于中query()用法小结的这篇文章, 就介绍到此处了, 更多相关query()内容, 需要搜索我以前的文章, 或者继续浏览下面的相关文章, 希望大家以后多多我谢谢
返回列表