python - 循环数据框python中的列
问题描述
我想遍历特定数据框中的 2 列,并且我想通过列的名称访问数据,但它在第 3 行给了我这个错误(类型错误)
i=0
for name,value in df.iteritems():
q1=df[name].quantile(0.25)
q3=df[name].quantile(0.75)
IQR=q3-q1
min=q1-1.5*IQR
max=q3+1.5*IQR
minout=df[df[name]<min]
maxout=df[df[name]>max]
new_df=df[(df[name]<max) & (df[name]>min)]
i+=1
if i==2:
break
解决方案
类型错误的发生可能有很多原因,所以如果你添加部分 DF 来尝试理解问题会更好。
另外要遍历列,您还可以使用该iterrows()
函数:
import pandas as pd
df = pd.read_csv('filename.csv')
for _, content in df.iterrows():
print(content['columnname']) #add the name of the columns you want to loop over
有关更多信息,请参阅以下链接
推荐阅读
- python - 如何迭代抓取 url 列表中的所有表格?
- makefile - 如何将共享库链接到生成文件
- mysql - BigQuery - 在列或另一个列上左连接两个表
- angular - Javascript 模拟文件,如 input="file" 上传
- python - 无法在 Python Selenium - Chrome 中单击“保存”B 按钮
- vue.js - 在引导 vue 中使用文件和数组
- pygame - AttributeError:“pygame.Surface”对象没有属性“get_rect”
- c# - 在 C# 中使用字母和数字 (code="BC1") 属性对 XML 进行排序
- python - Pygame rect.center 属性
- c# - 有没有一种简单的方法可以将 CSV 文件中记录的行号映射到 POCO?