1 遍历DataFrame的三种方法
2 按列遍历
3 按行遍历
31 第一种方法
32 第二种方法
4 遍历DataFrame某一列(行)数据
41 获取frame的index属性,然后使用frame[列索引]get(行索引)获得对应的值
42 获取frame的column属性,然后使用frame[列索引]get(行索引)获得对应的值
5 获取某一个值
51 DataFrameat[行索引,列索引]获取某一个值
52 DataFrameiat[默认行索引,默认列索引]获取某一个值
53 DataFrameloc[行索引,列索引]获取某个值,与at不同的是,只输入某一参数,获得某一行或某一列
54 DataFrameiloc[默认行索引,默认列索引]获取某个值,与iat不同的是,只输入某一参数,获得某一行或某一列:
建议参考一下dataframe文档,里面有相应的方法,不需要使用for循环遍历,for循环遍历会拖慢程序。对于dataframe中数据检索可以使用下面的方法。
全部dfvalues
name列的数据df['name']values
loc检索A列dfloc['A']
iloc进行行检索dfiloc[0]
直接使用名字进行列检索,但不适合行检索df['name']
第一步:准备一些数据根据你的描述生成的一堆数据
定义一些变量
TOPLST = ['A', 'B', 'C'] # top10
PATH = 'testxls' # 我生成的Excel测试文件位置
第二步:根据描述,你需要对比两个序列之间是否有交集?
这里简单定义一个函数(当然也可以不这样做):
def checkLst(lst1, lst2):
# 如果两个列表中有相同值,则返回True
for item in lst1:
if item in lst2:
return True
return False
第三步:实现我们的需求:这里主要还是使用索引,掌握dataframe的函数基础上,如何使用这些接口函数很重要。这里简单几行实现数据清洗功能。
def clearData(path, toplst):
df = pandasread_excel(path)
# 找到需要判断的mesh列
mesh = df['mesh']
# 清除队列
clearilst = []
# 遍历每一行数据meshindex是RangeIndex实例
for index in meshindex:
# 判断top10和mesh列中是否有交集,如果没有交集则将索引加入删除队列
if not checkLst(toplst, meshiloc[index]split(';')):
# 将没有交集的行索引添加至清洗列表
clearilstappend(index)
# 清洗结果赋值
result = dfdrop(index=clearilst, axis=0)
return result
完整的代码截图如下:
程序源代码
我们来看下运行效果:
运行效果展示
完美运行,不用 *** 心索引+1的问题,也不用再创建一个DataFrame实例!
希望能够采纳!
、可以通过传递一个list对象来创建一个Series,pandas会默认创建整型索引:
2、通过传递一个numpy array,时间索引以及列标签来创建一个DataFrame:
3、通过传递一个能够被转换成类似序列结构的字典对象来创建一个DataFrame:
4、查看不同列的数据类型:
以上就是关于python中如何倒着遍历dataframe全部的内容,包括:python中如何倒着遍历dataframe、python对dataframe进行 *** 作、pandas 怎么获取最大行数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)