python - 仅比较数据框中的两行
问题描述
我有一个带有 focus_duration 列的数据框,我想逐对比较这个数据,即第 0 行和第 1 行、第 2 和第 3 行、第 4 和第 5 行等。如果第一个整数大于第二个整数,请在其中写入 1一个新的列。如果小于,则写入-1,如果相等则为0。我尝试创建一个列表并将一个元素与下一个元素进行比较。但是通过这种方式,它将元素二与元素三和元素三与元素四进行比较,这是我不想要的。
a = df['focus_duration'].tolist()
b = []
for i in range(0, (len(a)-1)):
if a[i] < a[i+1]:
b.append(0)
elif a[i] > a[i+1]:
b.append(1)
解决方案
如果您的行数是奇数还是偶数,您需要检查条件。我正在为您自己的代码添加一个条件。此外,例如,当您使用range(3)
它时,它会从 0 迭代到 2。
a = df['focus_duration'].tolist()
b = []
for i in range(len(a)):
if i%2 == 0:
if a[i] < a[i+1]:
b.append(0)
elif a[i] > a[i+1]:
b.append(1)
else:
if a[i] < a[i-1]:
b.append(0)
elif a[i] > a[i-1]:
b.append(1)
此代码比较零与一、一与零、二与三、三与二,依此类推。
推荐阅读
- css - 将列表项以图形方式排列
- html - Vue 在 Html.DropDownList MVC 5 上的变化
- ruby - 尽早突破开始/结束块
- python - 如何使用 scipy.optimize.curvefit 修复不良的 PSD 拟合
- javascript - 在 OS X 上使用 nvm 重新安装节点而不删除 node_modules?
- python - 将不同大小的数组组合成一个对象?
- javascript - 异步/等待函数返回未定义?
- react-navigation - 如何在嵌套的抽屉/堆栈导航中包含 menuIcon 以切换抽屉导航器?
- php - Cakephp 中的设置语言环境
- python - 如何有效地总结数组 X 中所有元素 Y[i] 中的每个不同值 c,其中 X[i] = k?