python - 当我从数据框中的一行中创建一个列表时,它在 for 循环中仅迭代一次,而当对列执行相同操作时,它工作得很好

标签 python pandas dataframe

我想迭代数据框中的一行,并且在每次迭代时我想更改字典中的一些值。我对一列做了同样的事情,输出很好,但是当我使用一行时,它只迭代一次。我应该怎么办。

这是我的代码的一部分-

  for c in df[count:count+1,4:16]:
        if(c < 40):
            no_of_failed_assessment = no_of_failed_assessment +1

这是另一个循环内的循环,即内部循环。外循环的每次迭代都会增加计数。

现在这一行有 15 个值。但它只迭代一次。并立即显示其中的所有值。

我对一列做了同样的事情,它按照列表的方式进行迭代。

我应该如何迭代它,就像列一样?

最佳答案

使用 .values 属性迭代 DataFrame 中的值。另外,为了确保基于整数位置的索引的一致性,我建议您使用 iloc (来自 here ):

for c in df.iloc[count,4:16].values: # the count+1 upper bound is not necessary
    if(c < 40):
       no_of_failed_assessment = no_of_failed_assessment +1

关于python - 当我从数据框中的一行中创建一个列表时,它在 for 循环中仅迭代一次,而当对列执行相同操作时,它工作得很好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51610742/

相关文章:

python - 当值为0时如何在轴上显示条形类别

python - 计算两个 3D 向量之间的角度

python - Curl 到 Python 的转换

python - 准确度表现良好,但图像分割中的 Dice 损失较差

python - Pandas:获取重复的索引

python - 如何在多个条件下对 Pandas 的数据进行分组?

Python pandas 线性回归 groupby

python - 如何以扭曲的方式返回 json 响应?

python - 如何为python数据框中的选定列着色?

r - R 中不同类型的聚合